Bonjour à tous,
Je débute en VBA et en code tout court. J'aimerais réaliser une macro qui permettrait à l'utilisateur d'entrer un mot grâce à la fonction inputBox, ce mot viendrait alimenter une plage de cellules ( colonne D ) où il y aurait déjà des infos. De plus, ce mot se placerait au début avant toutes les autres propositions ( Colonne D , D1 = titre ). Le problème c'est que je n'arrive pas à faire ça dynamiquement, j'ai essayé de parcourir ma plage de cellule avec ma boucle For Each afin que la DropDownList affiche toutes les cellules renseignés (il pourrait en avoir n) mais je n'arrive pas à comprendre comment gérer la boucle For Each !
Voici mon bout de code :
Vous pouvez voir que j'ai entrer le Range en "dur" jusqu'à 100, ce n'est pas mon but, vu que je veux que le Range commence à 2 et finisse la où il n'y aura plus de propositions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub macro_dropDownList() Range("D2").Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove valeur = InputBox("Entrez le nom du model") Range("D2").Value = valeur For Each c In Worksheets("DropDownList").Range("D2:D100").Cells ActiveWorkbook.Names("Model_vehicules").RefersToR1C1 = _ "=DropDownList!$D$2:$D$100" Next
Merci d'avance pour votre aide !
Partager