Liste déroulante sans passer par une liste sur feuille

Résolu
Valoche01 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention   -  
Valoche01 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention   -
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 !!


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
A voir également:

2 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
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
0
Valoche01 Messages postés 43 Date d'inscription   Statut Membre Dernière intervention  
 
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.
0