VBA - Ajouter valeurs dans liste déroulante

Fermé
RussellD Messages postés 57 Date d'inscription jeudi 18 mars 2010 Statut Membre Dernière intervention 6 septembre 2010 - 4 mai 2010 à 15:48
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 4 mai 2010 à 16:46
Bonjour à tous,

je travaille sur excel 2003 et programme mes macros en VBA

J'ai sur ma feuille une liste déroulante dont la source est la plage de cellules (A1:A5). Grace à un textbox et un bouton de commande, je peux inserer une cellule en haut de la colonne A (en A1) et y mettre une valeur, avec le code :

Worksheets("Feuil1").Cells(1,1).Insert
Worksheets("Feuil1").Cells(1,1).Select
With Selection
.Value = TextBox1.Value
End With


Le problème est que la source de la liste déroulante se décale lors de l'insertion de cellule, et passe à (A2:A6)... Comment faire pour éviter cela, et faire en sorte que la plage-source devienne (A1:A6), de manière à incorporer la nouvelle valeur?

Merci d'avance

Cordialement
A voir également:

1 réponse

lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
4 mai 2010 à 16:46
Bonjour,
Il y a peut-être plus simple mais j'ai pas trouvé..
Dim A As String
Dim B As Range, TB, C As Range
    A = ComboBox1.ListFillRange
    TB = Split(A, ":")
    Set C = Range(TB(1))
    Set B = Range(Cells(1, 1), Cells(C.Row + 1, 1))
    ComboBox1.ListFillRange = B.Address

A+
0