Affecter une commande VBA à plusieurs plages de cellules

Bonjour,

Avec la commande ci-dessous, je rends possible le choix multiple dans les cellules à listes déroulantes situées en AC7 : AC1500.

Je souhaite que d'autres séries de cellules à liste déroulante en AE7 : AE1500 puis en AK7 : AT1500 soient dotées de cette fonctionnalité.

Comment peut-on réécrire la commande

PS : je n'y connais rien en VBA !!!

Merci de votre aide

Bruno

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect([AC7:AC1500], Target) Is Nothing And Target.Count = 1 Then

Application.EnableEvents = False

ValSaisie = Target

Application.Undo

p = InStr(Target, ValSaisie)

If p > 0 Then

Target = Left(Target, p - 1) & Mid(Target, p + Len(ValSaisie) + 1)

If Right(Target, 1) = ":" Then

Target = Left(Target, Len(Target) - 1)

End If

Else

If Target = "" Then

Target = ValSaisie

Else

Target = Target & ":" & ValSaisie

End If

End If

Application.EnableEvents = True

End If

End Sub

bonjour,

remplace

If Not Intersect([AC7:AC1500], Target) Is Nothing And Target.Count = 1 Then

par

If Not (Intersect([AC7:AC1500], Target) Is Nothing) _
Or Not (Intersect([AE7:AE1500], Target) Is Nothing) _
Or Not (Intersect([AK7:AK1500], Target) Is Nothing) And Target.Count = 1 Then

je n'ai pas vérifié ce que faisait le reste de ton code, j'ai fait l'hypothèse que cela fonctionnait comme tu le souhaitais

Merci beaucoup h2so4

Ca marche !

Bruno

Rechercher des sujets similaires à "affecter commande vba plages"