Bonjour à tous,
J'ai un problème avec la construction de ma liste de validation par macro.
je récupère des données d'une base Oracle avec un
"select code from reference" et je construis ma liste à l'aide du recordset qui récupère ces données :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
    'create the list of elements
    While Not rs.EOF
        mylist = mylist & rs.Fields(0) & ","
        rs.MoveNext
    Wend
    mylist = Left(mylist, Len(mylist) - 1)
 
    target.Select
    With Selection.Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:=mylist
        ...
    Wend
Mon problème vient du fait que j'ai des enregistrements du style "nom,prenom" Et il me considère la virgule comme un séparateur. J'ai donc au final dans ma liste déroulante une ligne nom une ligne prenom. Comment éviter ce problème (avoir sur une seule ligne nom,prenom) ? J'ai essayé en mettant "nom,prenom" entre guillemets ( mylist = mylist &"""" & rs.Fields(0) & """," ) mais ça m'affiche "nom sur une ligne et prenom" sur la suivante... :mad:

En espérant que vous pourrez m'aider