Comment faire un Menu déroulant dans excel ?

Résolu/Fermé
Signaler
-
 PM -
Bonjour,
Je cherche à faire un menu déroulant dans un tableau sur excel. Ce menu déroulant doit me permettre de faire un choix dans une liste pour incrémenter mes cellules. Ce menu déroulant doit apparaitre à côté des cellules que je souhaite remplir.
Comment faire ? Merci pour l'aide.

2 réponses

Messages postés
490
Date d'inscription
dimanche 14 mars 2004
Statut
Membre
Dernière intervention
12 septembre 2007
95
Bonjour Xavier,
Je vous propose ce qui suit :
  • Sur une autre feuille du classeur vous entrez les valeurs de votre choix sous forme de colonne.
  • Retour dans votre feuille de données et clic sur la cellule ou vous voulez que le choix intervienne.
  • Barre d’outil : Données\Validation
  • Onglet Options : sous Autoriser, choisir Liste
  • Sous Source : l’adresse de votre champ de valeurs (exp. =$A$6:$A$11)
  • Sur OK pour terminer
  • Glisser\Coller pour les autres cellules.

Bonne journée.

Salutations
Jean-Pierre
557
Messages postés
41
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
23 octobre 2006
14
Bonjour purrofix,

j'ai essayé ta méthode et ca m'a beaucoup aidé aussi. Seulement je ne parviens à inserer des données d'une autre page, il ne veut le faire que si les cellules sources sont sur la meme page.

Est ce normal?

Par exemple si je fais =Feuil3!$A$12:$A$51 il me donne un message d'erreur.

Merci d'avance pour ton aide
justme
0
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 590 >
Messages postés
41
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
23 octobre 2006

bonjour

regarde ici : menu deroulant dans excel#2

0
>
Messages postés
41
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
23 octobre 2006

je ne comprends comment tu as réussi à créer le menu déroulant à partir d'une autre feuille
si tu pouvais me l'expliquer
merci par avance
@+
0
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
849 >
Messages postés
41
Date d'inscription
mardi 4 janvier 2005
Statut
Membre
Dernière intervention
23 octobre 2006

Bonsoir,

quand la liste de validation est sur une autre feuille, il faut donner un nom (insertion/nom/définir) à la zone de référence de la liste et appeler ce nom dans les cellules de saisie (données/validation/liste) en mettant =lenom dans la zone source

A+
0
Super!
Cela a fonctionné parfaitement et sans problème; merci!
Question: y a-t-il moyen de limiter le nombre de fois qu'un élément de la liste oeut être coché dans une feuille? J'ai une liste de tables de convivies et je voudrais un STOP au moment où une table est cochée plus de fois qu'il n'y a de place à table (p.ex. 8 par table)?
D'avance merci.
0

Bonjour,

pour les couleurs, tu fais Menu Format -> Mise en forme conditionnelle

Tu mets tes conditions "La valeur de la cellule égale MC" tu cliques sur le bouton format et tu choisis la couleur désirée

Tu cliques sur le bouton Ajouter. Et là tu mets autant de conditions que tu désires ( enfin pas 50000 ! )

Voila pour les couleurs


Pour les totaux : c'est du VBA ( ALT+F11 )

Pour par exemple "traquer" les valeurs entre les cellules J16 à N31
ColStart = "J": ColEnd = "N"
LigneStart = 16: LigneEnd = 31




Inserer un module et y mettre ce code
Global flag As Byte

Private Sub Worksheet_Change(ByVal Target As Range)
If flag = 1 Then Exit Sub

Rem
Rem on traque entre les colonnes J et N
Rem et entre les lignes 16 et 31
Rem

ColStart = "J": ColEnd = "N"
LigneStart = 16: LigneEnd = 31

Cellule = Target.Address
Dollar = InStr(2, Cellule, "$")
colonne$ = Mid$(Cellule, 2, Dollar - 2)
Ligne$ = Mid$(Cellule, Dollar + 1)

If (colonne$ >= ColStart And colonne$ <= ColEnd) Then
If (Ligne$ >= LigneStart And Lignes <= LignesEnd) Then
For Colonnes = Asc(ColStart) To Asc(ColEnd)
For Lignes = LigneStart To LigneEnd
Longueur = Len(Cells(Lignes, Colonnes - 64).Text)
Select Case Longueur
Case 1
P = P + 1
Case 2
MC = MC + 1
Case 3
MSC = MSC + 1
End Select
Next Lignes
flag = 1
Cells(LigneEnd + 1, Colonnes - 64).Value = "MC = " + CStr(MC)
Cells(LigneEnd + 2, Colonnes - 64).Value = "MSC = " + CStr(MSC)
Cells(LigneEnd + 3, Colonnes - 64).Value = "P = " + CStr(P)
flag = 0
MC = 0: MSC = 0: P = 0
Next Colonnes
End If
End If
End Sub


Voila, cela devrait faire l'affaire !
26
Merci pour tout ces conseils!!! C'est vraiment cool Excel!!!

Juste pour tempérer un peu ta réponse: apparement on ne peut pas mettre tant de conditions que ça... Je n'arrive à en mettre que 3... Ca dépend sûrement de la version de Excel qu'on a (mon PC du boulot, qui tourne sous Windows 2000, yiiiiipie!)

En tout cas merci pour vos TRES bon tuyaux!

iokLaiok
0