Ajout d'une ligne dans une liste deroulante via macro

Posté le 17-12-2007 à 10:44:55 profileditEdition rapideansweranswer +answer -configFavoris
Prévenir les modérateurs en cas d’abus

Bien le bonjour a vous,

j’ai un problème ! (comme beaucoup de monde me direz-vous:))

apres ajout d’une ligne dans une liste sous excel via une macro, je veux créer une deuxieme macro qui ajoutera cette ligne dans une liste deroulante qui existe deja. C’est à dire qu’elle ajoute cette ligne de facon incrementielle aux option deja existantes.

voilà mon code actuel :


   1. Sub test()
   2.
   3. Dim row As Integer
   4.
   5. Sheets("List1" ).Select
   6.
   7. row = 5
   8.
   9. While Cells(row, 1) <> ""
  10.     row = row + 1
  11.            
  12.     Sheets("Qualité de Service" ).Select
  13.     ActiveSheet.Shapes("Drop Down 1" ).Select
  14.     With Selection
  15.         Sheets("List1" ).Select
  16.         .ListFillRange = "List1!$A$1:$A$5"
  17.         .LinkedCell = "$B$5"
  18.         .DropDownLines = row - 1
  19.         .Display3DShading = True
  20.     End With
  21.    
  22. Wend
  23.
  24. Sheets("Qualité de Service" ).Select
  25. Range("a1" ).Select
  26.
  27. End Sub

Dans ".ListFillRange " je voudrais que le cellule de fin prenne la derniere cellule … du genre .ListFillRange = "List1!$A$1:$A$ row " …

merci de votre aide ou des commentaires que vous posterez :slight_smile:

Nyt’

.ListFillRange = “List1!$A$1:$A$5”

tu cree un variable compteur CLigne as integer

que tu incrementes a chaque evenement clic de la liste déroulante

.ListFillRange = “List1!$A$1:$A$ &” Cligne

A+

merci de ta réponse Vyger

ca marche :smiley:

a un truc pret et c’etait le sans faute ^^

.ListFillRange = "List1!$A$1:$A$" & Cligne

C’était pour te faire chercher un peu…:wink:

(Faute frappe, simplement…)

a+