Comment faire un Menu déroulant dans excel ?

Résolu/Fermé
xavier -  
 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

  1. purrofixe Messages postés 490 Date d'inscription   Statut Membre Dernière intervention   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
    1. justme92 Messages postés 41 Statut Membre 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
    2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744 > justme92 Messages postés 41 Statut Membre
       
      bonjour

      regarde ici : menu deroulant dans excel#2

      0
    3. yykk > justme92 Messages postés 41 Statut Membre
       
      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
    4. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859 > justme92 Messages postés 41 Statut Membre
       
      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
    5. ysednaj
       
      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
  2. meego78 Messages postés 1 Date d'inscription   Statut Membre
     
    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
    1. iokLaiok
       
      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