Liste déroulante sans passer par une liste sur feuille
Résolu
Valoche01
Messages postés
45
Statut
Membre
-
Valoche01 Messages postés 45 Statut Membre -
Valoche01 Messages postés 45 Statut Membre -
Bonjour à tous,
après de nombreuses recherches, je n'arrive pas à créer ma liste déroulante sans récupérer la liste sur une feuille.
Simplement je voudrais qu'en lançant ma macro (la liste étant dans le code VBA), une cellule sur une feuille soit dotée d'un choix simple avec liste.
Voici une idée de code que j'ai eu en passant par les tableaux...
Merci d'avance pour votre aide !!
après de nombreuses recherches, je n'arrive pas à créer ma liste déroulante sans récupérer la liste sur une feuille.
Simplement je voudrais qu'en lançant ma macro (la liste étant dans le code VBA), une cellule sur une feuille soit dotée d'un choix simple avec liste.
Voici une idée de code que j'ai eu en passant par les tableaux...
Merci d'avance pour votre aide !!
Option Explicit
Sub Macro1()
Dim Arr As Variant
'Je créé mon tableau
Arr = Sheets("Liste").Range("A1:A3")
Arr(1, 1) = "oui"
Arr(2, 1) = "non"
Arr(3, 1) = "en cours"
Sheets("Liste").Range("A1:A3") = Arr 'J'aimerais éviter cette ligne pour ne pas travailler sur la feuille
'Je créé ma liste de choix
Range("D1").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=A1:A3" 'Ici j'aimerais récupérer mon oui;non;en cours sans passer par la feuille
End With
2 réponses
-
Bonjour,
une fcon de faire
Sub Macro1()
Dim Arr As String
Arr = "oui,non,en cours"
'Je créé ma liste de choix
Range("D1").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=Arr
End With
End Sub -
Ah oui il fallait connaître la syntaxe !! Je ne pensais pas qu'en mettant Formula1:=Arr , ça sélectionnerait séparément chaque mot !
Merci beaucoup c'est top !
Valentin.