Comment reproduire un code VBA d'une colonne sur plusieurs colonnes

Bonjour

Voici mon code VBA:

Public Flag As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)

If Flag Then Exit Sub

If Not Application.Intersect(Target, Columns("c")) Is Nothing Then

If Target.Count > 9 Then Exit Sub

If Application.CountIf(Range("c6:c175"), "CA") > 9 Then

Flag = True

17exemple.zip (196.28 Ko)
17exemple.zip (196.28 Ko)

MsgBox ("Le nombre maximal de CA est déjà atteint!")

Target.ClearContents

Flag = False

End If

End If

End Sub

Il bloque dès que l'on essaie d'enregistrer une cellule avec la valeur "CA" dans la plage C6:C175 alors qu'il y a déjà 9 cellules avec la valeur "CA" dans cette plage.

Je souhaiterai que ce code fasse la même chose dans les colonnes d, e, f jusqu'à m, avec les plages d6:d175, e6:e175 ... jusqu'à m6:m175.

Vous avez mon exemple ci-joint.

Merci par avance

Emmanuel

Bonjour

une proposition

Public Flag As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
If Flag Then Exit Sub
    If Not Application.Intersect(Target, Range("C6:M175")) Is Nothing Then
        If Target.Count > 9 Then Exit Sub
        If Application.CountIf(Range(Cells(6, Target.Column), Cells(175, Target.Column)), "CA") > 9 Then
            Flag = True
                MsgBox ("Le nombre maximal de CA est déjà atteint!")
                Target.ClearContents
            Flag = False
        End If
       End If
End Sub

Bonjour

Super ça à l'air de bien marcher.

Merci

et clique sur le cœur si tu es satisfait, cela fera toujours plaisir ! lol

Rechercher des sujets similaires à "comment reproduire code vba colonne colonnes"