natorp
XLDnaute Barbatruc
Bjr à tous et toutes...
J'ai bien trouvé ce code sur le très bon site de Boisgontier mais il ne se passe pas comme prévu....
Quand je choisis un nom dans la liste sur la feuille ChoixMult rien n'apparait dans la cellule E2 et sur la feuille ChoixMult2 les noms ne se cumulent pas
Y a-t-il une erreur ou est-ce qu'il me manque quelque chose ???
Code pour ChoixMult :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
p = InStr(Target.Offset(0, 2), Target.Value)
If p > 0 Then
Target.Offset(0, 2) = Left(Target.Offset(0, 2), p - 1) & _
Mid(Target.Offset(0, 2), p + Len(Target.Value) + 1)
If Right(Target.Offset(0, 2), 1) = ":" Then
Target.Offset(0, 2) = Left(Target.Offset(0, 2), Len(Target.Offset(0, 2)) - 1)
End If
Else
If Target.Offset(0, 2) = "" Then
Target.Offset(0, 2) = Target
Else
Target.Offset(0, 2) = Target.Offset(0, 2) & "," & Target.Value
End If
End If
End If
End Sub
code pour ChoixMult2 :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
Application.EnableEvents = False
p = InStr(Target.Offset(0, -1), Target.Value)
If p > 0 Then
Target.Offset(0, -1) = Left(Target.Offset(0, -1), p - 1) & _
Mid(Target.Offset(0, -1), p + Len(Target.Value) + 1)
If Right(Target.Offset(0, -1), 1) = ":" Then
Target.Offset(0, -1) = Left(Target.Offset(0, -1), Len(Target.Offset(0, -1)) - 1)
End If
Else
If Target.Offset(0, -1) = "" Then
Target.Offset(0, -1) = Target
Else
Target.Offset(0, -1) = Target.Offset(0, -1) & ":" & Target.Value
End If
End If
Target.Value = Target.Offset(0, -1)
Application.EnableEvents = True
End If
End Sub
Lien : http://boisgontierjacques.free.fr/fichiers/DonneesValidation/DVChoixSuccessifs.xls
merci de votre attention, cordialement
Gérard
J'ai bien trouvé ce code sur le très bon site de Boisgontier mais il ne se passe pas comme prévu....
Quand je choisis un nom dans la liste sur la feuille ChoixMult rien n'apparait dans la cellule E2 et sur la feuille ChoixMult2 les noms ne se cumulent pas
Y a-t-il une erreur ou est-ce qu'il me manque quelque chose ???
Code pour ChoixMult :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
p = InStr(Target.Offset(0, 2), Target.Value)
If p > 0 Then
Target.Offset(0, 2) = Left(Target.Offset(0, 2), p - 1) & _
Mid(Target.Offset(0, 2), p + Len(Target.Value) + 1)
If Right(Target.Offset(0, 2), 1) = ":" Then
Target.Offset(0, 2) = Left(Target.Offset(0, 2), Len(Target.Offset(0, 2)) - 1)
End If
Else
If Target.Offset(0, 2) = "" Then
Target.Offset(0, 2) = Target
Else
Target.Offset(0, 2) = Target.Offset(0, 2) & "," & Target.Value
End If
End If
End If
End Sub
code pour ChoixMult2 :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
Application.EnableEvents = False
p = InStr(Target.Offset(0, -1), Target.Value)
If p > 0 Then
Target.Offset(0, -1) = Left(Target.Offset(0, -1), p - 1) & _
Mid(Target.Offset(0, -1), p + Len(Target.Value) + 1)
If Right(Target.Offset(0, -1), 1) = ":" Then
Target.Offset(0, -1) = Left(Target.Offset(0, -1), Len(Target.Offset(0, -1)) - 1)
End If
Else
If Target.Offset(0, -1) = "" Then
Target.Offset(0, -1) = Target
Else
Target.Offset(0, -1) = Target.Offset(0, -1) & ":" & Target.Value
End If
End If
Target.Value = Target.Offset(0, -1)
Application.EnableEvents = True
End If
End Sub
Lien : http://boisgontierjacques.free.fr/fichiers/DonneesValidation/DVChoixSuccessifs.xls
merci de votre attention, cordialement
Gérard
Dernière édition: