Excel: création liste déroulante par macro
Résolu/Fermé
Nono
-
24 août 2011 à 09:27
toni31 Messages postés 42 Date d'inscription jeudi 22 novembre 2012 Statut Membre Dernière intervention 15 juin 2015 - 19 juin 2014 à 23:34
toni31 Messages postés 42 Date d'inscription jeudi 22 novembre 2012 Statut Membre Dernière intervention 15 juin 2015 - 19 juin 2014 à 23:34
A voir également:
- Liste macro excel
- Liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel liste déroulante en cascade - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
5 réponses
Salut Mikanadien,
Merci pour ta réponse! J'avais pensé à cette option, et elle marche très bien; le truc c'est que la page de questionnaire que je génère doit être copiée sur une autre feuille et, pour des questions de design, je ne peux pas vraiment avoir la liste dans des cellules de la feuille...
Je voudrais vraiment créer cette liste déroulante par macro; ce qui est fou c'est quíl me suffit d'aller dans les options, ne rien changer, valider, pour que la bonne liste apparaisse.
Merci encore :)
Nono
Merci pour ta réponse! J'avais pensé à cette option, et elle marche très bien; le truc c'est que la page de questionnaire que je génère doit être copiée sur une autre feuille et, pour des questions de design, je ne peux pas vraiment avoir la liste dans des cellules de la feuille...
Je voudrais vraiment créer cette liste déroulante par macro; ce qui est fou c'est quíl me suffit d'aller dans les options, ne rien changer, valider, pour que la bonne liste apparaisse.
Merci encore :)
Nono
mikanadien2
Messages postés
108
Date d'inscription
mardi 23 août 2011
Statut
Membre
Dernière intervention
10 août 2012
10
24 août 2011 à 09:33
24 août 2011 à 09:33
Bonjour
Essaie plutot :
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$A$1:$A$10"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
En ayant mis dans la colonne A pour cet exemple les valeurs que tu veux dans ta liste...
Histoire qu il comprenne bien que chaque valeur de cette range doit etre un element de la liste....
Essaie plutot :
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$A$1:$A$10"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
En ayant mis dans la colonne A pour cet exemple les valeurs que tu veux dans ta liste...
Histoire qu il comprenne bien que chaque valeur de cette range doit etre un element de la liste....
mikanadien2
Messages postés
108
Date d'inscription
mardi 23 août 2011
Statut
Membre
Dernière intervention
10 août 2012
10
24 août 2011 à 09:52
24 août 2011 à 09:52
Re,
Je comprends ton probleme...
Tu veux creer une liste, non pas en fonction d une liste de cellules, mais en fonction de valeurs prefinies....
Je ne pense pas que ce soit possible car le propre de la fonction Selection.Validation, c est d autoriser uniquement le contenu d une selection de cellules...
Je te conseille donc d utiliser la methode qui marche et de mettre la liste de cellule en non visible par l utilisateur, par exemple en colonne AZ
Genre : With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AZ$1000:$AZ$1010"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
Et tu met en couleur de police sur ces cellules du blanc... Et ca devient invisible... Et visible dans ta liste... Pas belle la vie ?
Je comprends ton probleme...
Tu veux creer une liste, non pas en fonction d une liste de cellules, mais en fonction de valeurs prefinies....
Je ne pense pas que ce soit possible car le propre de la fonction Selection.Validation, c est d autoriser uniquement le contenu d une selection de cellules...
Je te conseille donc d utiliser la methode qui marche et de mettre la liste de cellule en non visible par l utilisateur, par exemple en colonne AZ
Genre : With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$AZ$1000:$AZ$1010"
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
Et tu met en couleur de police sur ces cellules du blanc... Et ca devient invisible... Et visible dans ta liste... Pas belle la vie ?
Oui je vais faire ca. Je ne serai pas le seul à l'utiliser, je voulais donc être sûr qu'il n'y ait pas d'erreur de manip possible... Enfin bon, problème résolu, merci beaucoup!!
Nono
Nono
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maloplekxus
Messages postés
26
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
20 août 2014
3
31 janv. 2013 à 10:30
31 janv. 2013 à 10:30
Bonjour,
Cela est possible ! Dans VBA, il faut remplacer les ";" par des "," comme ceci :
Bien cordialement
Cela est possible ! Dans VBA, il faut remplacer les ";" par des "," comme ceci :
With Selection.Validation .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="1,2,3,4,5" End With
Bien cordialement
toni31
Messages postés
42
Date d'inscription
jeudi 22 novembre 2012
Statut
Membre
Dernière intervention
15 juin 2015
1
19 juin 2014 à 23:34
19 juin 2014 à 23:34
merci, ça marche Malo
toni31
Messages postés
42
Date d'inscription
jeudi 22 novembre 2012
Statut
Membre
Dernière intervention
15 juin 2015
1
19 juin 2014 à 23:34
19 juin 2014 à 23:34
^^