Excel De Zone De Liste Déroulante Actualisation De La Liste Déroulante?

Est-il un moyen de rafraîchir une zone de liste déroulante?
J'ai le code VBA suivant. La liste déroulante est rempli, jusqu'à ce que l'instruction Si la liste est vide et remplie avec les éléments appariés.

À ce stade, la liste déroulante n'affiche qu'un seul élément avec une barre de défilement. Mais Si je ferme le menu déroulant et de la rouvrir, il est entièrement rempli correctement.

Private Sub ComboBox_SiteName_Change()
ComboBox_SiteName.DropDown

Dim v As Variant, i As Long
With Me.ComboBox_SiteName
 .Value = UCase(.Value)
 If .Value <> "" And .ListIndex = -1 Then
   v = Worksheets("Address").Range("Table5[[#All],[SITE NAME]]").Value
   .Clear ' Clear all items
   ' Repopulate with matched items
   For i = LBound(v, 1) To UBound(v, 1)
     If LCase(v(i, 1)) Like "*" & LCase(.Value) & "*" Then
      .AddItem v(i, 1)
     End If
   Next i
  Else
  ' Repopulate with all items
  .List = Worksheets("Address").Range("Table5[[#All],[SITE NAME]]").Value
  End If
 End With
End Sub

La ComboBox_Change fonction est appelée, comme les types d'utilisateur dans la liste déroulante.. la liste déroulante de la boîte se transforme à partir d'une liste en une seule ligne avec les flèches Haut/Bas après les Clairs et les remplir de nouveau appariés éléments..
mais si je ferme la liste déroulante de la partie et rouvrir la liste de tous les articles sans les flèches Haut/Bas.
L' .ListRows valeur = 8 par la voie.

Je voudrais un moyen de la liste déroulante potion de fermer et de rouvrir.. ou une fonction VBA pour actualiser la liste déroulante de la partie, Sans boutons externes ou des contrôles Veuillez

Je ne sais pas si le "Changement" est le droit de l'événement. Je n'ai pas fait de test, mais juste en regardant les événements disponibles, l'événement "KeyDown" être mieux? Encore une fois, je me demandais si il n'y a pas mieux...
Comment est Table5 structuré et qu'est-ce que les données?
Essayé événement "KeyDown" mais pas de changement en question. Table5 ont des en-Têtes et les données sont pour la plupart des Numéros ou des Général des Chaînes de caractères. Par exemple, le NOM du SITE serait "JOLLY RD", "ST. JOHNS", "US23 & JOHNSON", "ST. JOHNS NORD". Comme les types d'utilisateurs de "JO" de la liste déroulante des listes de tout et sélectionne JOLLY RD, mais dès qu'ils type "JOH" de la liste déroulante devient une entrée de haut avec de Défilement avec le SAINT. JOHNS sites.
Je voudrais utiliser VBA pour trier/filtrer une zone de liste déroulante sur un Userform afin qu'il fonctionne de la même manière une Tête de Filtre déroulant fonctionne sur la feuille de calcul. Par exemple, je voudrais que les éléments de filtre en tant que l'utilisateur tape. Que l'utilisateur tape "ST" par exemple, les seuls éléments dans la liste comprendrait "ST" même si l'un des éléments a été "rue PRINCIPALE", ou "l'ÉTAT" ou "PREMIER AVE"

OriginalL'auteur Chris Young | 2015-07-27