A voir également:
- [VBA] Liste déroulante se remplissant en continu
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste code ascii - Guide
- Supprimer une liste déroulante excel - Forum Word
2 réponses
Bonjour,
Au lieu de lévènnement Activate, utilises Initialize :
Remplace
-
Cordialement
Patrice
Au lieu de lévènnement Activate, utilises Initialize :
Remplace
Private Sub UserForm_Activate()par
Private Sub UserForm_Initialize().
-
Cordialement
Patrice
Bonjour,
Salut Patrice33740,
En complément de la réponse de Patrice, peut être "fermes" tu l'Userform par ce code :
Seconde possibilité, et de loin la plus simple et la plus efficace : vider la liste à chaque utilisation :
Note : Clear fonctionne car le remplissage se fait avec AddItem.
Cordialement,
Franck
Salut Patrice33740,
En complément de la réponse de Patrice, peut être "fermes" tu l'Userform par ce code :
UserForm1.Hide. Dans ce cas, il n'est pas "déchargé" de la mémoire, mais simplement masqué. Tu peux utiliser
UnLoad UserForm1.
Seconde possibilité, et de loin la plus simple et la plus efficace : vider la liste à chaque utilisation :
Private Sub UserForm_Activate() Dim i As Integer PaletteCb.Clear For i = 0 To 4 PaletteCb.AddItem Sheets("Userform").Cells(4 + i, 4) Next i End Sub
Note : Clear fonctionne car le remplissage se fait avec AddItem.
Cordialement,
Franck