Zone de Liste déroulante VBA

Bonjour à vous!

J'ai un tableau avec en colonne A une liste de nom.

Je voudrais créer une zone de liste déroulange ou j'écris les premières lettre et il m'indique les nom commencant par ceux-ci.

J'ai essayé de copier sur un tableau existant, mais ne fonctionne pas...

Une idée?

Private Sub ComboBox1_Change()

Dim J As Long
Dim I As Integer
Set Ws = Sheets("Repertoire")
  With Me.ComboBox1
    For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
      .AddItem Ws.Range("A" & J)
    Next J
  End With

  For I = 1 To 8
    Me.Controls("TextBox" & I).Visible = True
Next I

End Sub

Merci!

Bonjour,

A tester

Cellule de départ = A4

Private Sub Worksheet_Change(ByVal Target As Range)
'Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Cel As Range, Depart As String
  If Not Intersect(Range("A4"), Target) Is Nothing And Target.Count = 1 Then
    If Len(Range("A4")) = 3 Then    'Nombre de lettre
      With Range("A4:A" & Range("A" & Rows.Count).End(xlUp).Row)
        Set Cel = .Find(what:=Range("A4"), LookIn:=xlValues, lookat:=xlPart)
        If Not Cel Is Nothing Then
          Depart = Cel.Address
          Do
            If InStr(1, Cel, Range("A4"), vbTextCompare) = 1 Then
              Range("A4").ClearContents
              Cel.Select
              Exit Sub
            End If
            Set Cel = .FindNext(Cel)
          Loop While Depart <> Cel.Address
        End If
        MsgBox Range("A4") & " introuvable en colonne a"
      End With
    End If
  End If
End Sub

Amicalement

Pierrot

Merci de la proposition,

Par contre a placer ou? se n'est pas une combobox.

Une idée?

Bonjour,

Voici une mise en application d'une proposition issue du site de Jacques Boisgontier.

http://boisgontierjacques.free.fr/index2.htm

A+

70combointutif.zip (17.91 Ko)

C'est parfait!

Par contre, il ne fonctionne pas car je n'ai pas de Mr/Mme et je ne sais pas quoi enlever dans le code...

C'est parfait ! Par contre, il ne fonctionne pas ..

Tu as une drôle de conception de la perfection !

De mon coté, je n'ai pas de boule de cristal.

Pour que je vois ce qui ne fonctionne pas, il serait souhaitable que tu joignes un fichier ... avec quelques explications.

A+

J'ai réussi

Private Sub ChoixNom_click()
    For i = 1 To UBound(choix1)
        If choix1(i) = ChoixNom Then
            ligneEnreg = i + 1
            Me.Controls("Portable") = f.Cells(ligneEnreg, 3)
            Me.Controls("Fixe") = f.Cells(ligneEnreg, 4)
            Me.Controls("Ville") = f.Cells(ligneEnreg, 5)
            Me.Controls("Infos") = f.Cells(ligneEnreg, 6)
        End If
    Next i
End Sub

Encore merci, le site de Jacques Boisgontier est une mine d'or!

Bonjour à tous,

Le code est à placer dans le code de la feuille contenant les données.

avec un clic sur la cellule A4 si les données sont dans la colonne A

amicalement

Pierrot

Rechercher des sujets similaires à "zone liste deroulante vba"