IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème avec liste de choix sous VBA‏ [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 7
    Points
    7
    Par défaut Problème avec liste de choix sous VBA‏
    Bonjour à tous, j'ai un problème avec une liste de choix que j'ai créée à partir d'un code VBA, je veux pouvoir choisir soit "K=10", soit "K=20". Cette liste est définie pour un ensemble de cellule.
    Mon soucis, c'est qu'une fois le code déroulé, la liste qui apparaît au niveau de chaque cellule ne comporte qu'un seul choix qui est "K=10;K=20"

    Voici le code que j'ai rentré sous VBA :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Range("K7:K3000").Select
        With Selection.Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="K=10;K=20"
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
        End With
    Quelqu'un peut-il m'aider...?

    Merci d'avance

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,
    si c'est juste pour dire que la valeur de la cellule en colonne K doit être 10 ou 20 :
    ce code suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        With selection.Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="10,20" 'une virgule
            .IgnoreBlank = True
            .InCellDropdown = True
            .ShowInput = True
            .ShowError = True
        End With

  3. #3
    Futur Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Merci pour votre réponse!
    En réalité je souhaiterai afficher "K=10(méca)" ou bien "K=20(élec)" et pas simplement les valeurs "10" ou "20"... existe-t-il une solution?

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Re,

    Ce code devrait fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    With Selection.Validation
         .Delete
         .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="""K=10"",""K=20"""
         .IgnoreBlank = True
         .InCellDropdown = True
         .ShowInput = True
         .ShowError = True
    End With
    et en évitant les "select"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    With Range("K7:K3000").Validation
       .Delete
       .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="""K=10"",""K=20"""
       .IgnoreBlank = True
       .InCellDropdown = True
       .ShowInput = True
       .ShowError = True
    End With

  5. #5
    Futur Membre du Club
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    Merci beaucoup pour votre aide, cela fonctionne parfaitement !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ODBC] problème avec php et javascript sous odbc : listes déroulantes
    Par méloquenn dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 15/07/2008, 16h13
  2. Problème avec listes liées entre elles et bouton "précé
    Par Oluha dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/08/2005, 15h10
  3. Problème avec la librairie rfunc sous Firebird
    Par yayelix dans le forum SQL
    Réponses: 4
    Dernier message: 17/05/2005, 16h49
  4. problème avec une page web sous firefox!
    Par 3psilOn dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/11/2004, 11h49
  5. Problème avec le port série sous Windows XP
    Par didou2dek dans le forum Composants VCL
    Réponses: 6
    Dernier message: 02/09/2003, 19h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo