Saisie intuitive plusieurs colonnes

Bonjour à tous
Avec le code telechargé ci dessous j'ai une combox colonne C avec laquelle il y a une saisie intuitive
Je voudrais 2 combox supplémentaire colonne d et f avec la même liste "liste joueurs".
Comment faire
MERCI pour votre aide

Dim a(), mémo, f

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set f = Sheets("liste joueurs")
Set zSaisie = Range("c2:c300")
If Not Intersect(zSaisie, Target) Is Nothing And Target.Count = 1 Then
If mémo <> "" Then If IsError(Application.Match(Range(mémo), a, 0)) Then Range(mémo) = ""
a = Application.Transpose(f.Range("a2:a" & f.[a65000].End(xlUp).Row))
Me.ComboBox1.List = a
Me.ComboBox1.Height = Target.Height + 3
Me.ComboBox1.Width = Target.Width
Me.ComboBox1.Top = Target.Top
Me.ComboBox1.Left = Target.Left
Me.ComboBox1 = Target
Me.ComboBox1.Visible = True
Me.ComboBox1.Activate
mémo = Target.Address
Else
Me.ComboBox1.Visible = False
End If
End Sub

Private Sub ComboBox1_Change()
If Me.ComboBox1 <> "" And IsError(Application.Match(Me.ComboBox1, a, 0)) Then
Set d1 = CreateObject("Scripting.Dictionary")
tmp = UCase(Me.ComboBox1) & "*"
For Each c In a
If UCase(c) Like tmp Then d1(c) = ""
Next c
Me.ComboBox1.List = d1.keys
Me.ComboBox1.DropDown
End If
ActiveCell.Value = Me.ComboBox1
End Sub

Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ComboBox1.List = Application.Transpose(f.Range("c2:a" & f.[a65000].End(xlUp).Row))
Me.ComboBox1.DropDown
End Sub

Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
If IsError(Application.Match(ActiveCell, a, 0)) Then ActiveCell = ""
ActiveCell.Offset(1).Select
End If

Edit modo : merci de mettre le code entre balises grâce au bouton </>

Bonjour Pascal44000 et

Merci de mettre votre code entre balises avec le bouton </>

Sinon, pour votre demande, il suffit à mon sens de lire le code qui est on ne peut plus explicite

Set zSaisie = Range("c2:c300")

Et de l'adapter

Set zSaisie = Range("C2:C300,D2:D300,F2:F300")

@+

Désolé, ca ne fonctionne pas

ci joint le fichier,

Merci

21classeur1.xlsm (27.05 Ko)

Re,

Désolé, la séparation des plages se fait avec une virgule et non un point-virgule (je suis allé trop vite)

Cela fonctionne avec

Set zSaisie = Range("C2:C300,D2:D300,F2:F300")

ATTENTION !
Dans votre exemple, les colonne sont C, D et E... alors que vous parliez de F

@+

C'est super

Merci beaucoup et bon dimanche ensoleillé

Rechercher des sujets similaires à "saisie intuitive colonnes"