Réunir deux macros

Bonjour le forum,

Voilà, j'ai deux macros Worksheet_Change que je veux réunir en une seule pour pouvoir la mettre dans le code d'une feuille.

La première macro évite les doublons dans la colonne B :

Private Sub Worksheet_Change(ByVal cellule As Excel.Range)
    If cellule.Column = 2 Then 
        If Application.WorksheetFunction. _
           CountIf(Range("B:B"), cellule.Value) > 1 Then
            MsgBox "Hé, tu m'as déja inscrit, cela suffit, non ??"
            cellule.Value = ""
            cellule.Select
        End If
    End If
    End Sub

Et la deuxième macro met SG dans la cellule A6 si la cellule B6 est renseignée :

Private Sub Worksheet_Change(ByVal R As Range)
   If Intersect(R, Range("B6:B114")) Is Nothing Then Exit Sub
   R(1, 0) = IIf(R = "", "", "SG")
 End Sub

Est-il possible de les réunir ?

D'avance merci pour votre aide

Sub final

Call Worksheet_Change

Call Worksheet_Change2

End sub

Private Sub Worksheet_Change (ByVal cellule As Excel.Range)

If cellule.Column = 2 Then

If Application.WorksheetFunction. _

CountIf(Range("B:B"), cellule.Value) > 1 Then

MsgBox "Hé, tu m'as déja inscrit, cela suffit, non ??"

cellule.Value = ""

cellule.Select

End If

End If

End Sub

Private Sub Worksheet_Change2 (ByVal R As Range)

If Intersect(R, Range("B6:B114")) Is Nothing Then Exit Sub

R(1, 0) = IIf(R = "", "", "SG")

End Sub

Bonjour

Tout réunir dans la même macro

Private Sub Worksheet_Change(ByVal cellule As Excel.Range)
  If cellule.Column = 2 Then
    If Application.WorksheetFunction. _
                CountIf(Range("B:B"), cellule.Value) > 1 Then
      MsgBox "Hé, tu m'as déja inscrit, cela suffit, non ??"
      cellule.Value = ""
      cellule.Select
    End If
    If Intersect(cellule, Range("B6:B114")) Is Nothing Then Exit Sub
    cellule(1, 0) = IIf(cellule = "", "", "SG")
  End If
End Sub

Bonjour,

Il n'est pas très conseillé d'utiliser la première des 2 macros : Utilise pour cela le menu Données > Valisation avec la condition suivante (pour la cellule B2) :

=NB.SI(B:B;B2)=1

A+

Bonjour Direct3822, Banzaï64, Galopin01,

Je vous remercie beaucoup pour vos réponses, c'est vraiment sympa.

Bon Après midi

Rechercher des sujets similaires à "reunir deux macros"