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 MsgBox avec ComboBox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 35
    Par défaut Problème MsgBox avec ComboBox
    Bonjour à tous,
    Voilà mon problème,
    J'ai une UserForm où j'y es mis plusieurs ComboBox avec des listes de critères. Sur cette même UserForm j'y es mis un bouton "OK". Jusqu'ici tout va bien.
    Mon problème est que j'aimerais, lors d'un appui sur mon bouton "OK", vérifier qu'une donnée soit bien rentrée dans mais ComboBox. Si cela n'est pas le cas j'aimerais qu'un MsgBox s'affiche en disant par exemple "Veuillez entre une donnée dans ComboBox1".

    Le code que j'ai essayé est celui ci-dessous mais bien évidement il ne fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub CommandButton_OK_Click() 
    If fenginComboBox Is Not "INDEX!B3:B34" Then
    MsgBox "Veuillez saisir une famille d'engins"
    End If
    End Sub
    PS: je précise que je suis nouveau dans le domaine du VBA donc il se peut que je fasse d'énormes fautes .

    Merci pour ceux qui prêteront attention à mon sujet!
    Cordialement.

    MARIAIS Gwénaël

  2. #2
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    Ta combobox fenginComboBox est "remplie" via son RowSource?

    Si c'est le cas, il y a trois choix (et seulement 3) :
    > soit elle est vide,
    > soit elle a une valeur qui appartient au RowSource.
    > soit un petit malin a saisi une valeur dans le combobox.

    Pour éviter la saisie par un petit malin, il faut, dès l'initialisation de l'userform, paramétrer tes combobox comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fenginComboBox.Style = fmStyleDropDownList
    A partir de là, tu n'auras plus que deux possibilités, vide ou avec une valeur correspondante à ce que tu cherches.

    Donc, ton test devient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub CommandButton_OK_Click() 
    If fenginComboBox = "" Then
        MsgBox "Veuillez saisir une famille d'engins"
    End If
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 35
    Par défaut
    Merci Pijaku de prêter attention à mon sujet .

    Tout d'abord l'astuce fenginComboBox.Style = fmStyleDropDownList fonctionne ainsi que ma MsgBox.

    Maintenant ce que j'aimerais savoir c'est que depuis ma commande fenginComboBox.Style = fmStyleDropDownList installée, dans ma ComboBox "fenginComboBox"" je ne vais plus voir de titre par exemple "Famille engin". En faite je ne vois plus le Text dans ma combobox.

    En espérant avoir été assez clair. Merci.

  4. #4
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Donne moi ton code de remplissage des combobox.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 35
    Par défaut
    Le voici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    'Assignation de valeur aux combobox
          Me.nomComboBox.RowSource = "INDEX!A3:A34" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row
          Me.fenginComboBox.RowSource = "INDEX!B3:B34" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row
          Me.enginComboBox.RowSource = "INDEX!C3:C34" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row
          Me.typeoperationComboBox.RowSource = "INDEX!D3:D34" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row
          Me.tempsComboBox.RowSource = "INDEX!E3:E34" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row

  6. #6
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Bon.
    Plusieurs petites choses avant de continuer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.nomComboBox.RowSource = "INDEX!A3:A34"
    Ok, mais normalement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("INDEX").Cells(1, 1).End(xlDown).Row
    te donne le numéro de la dernière ligne. Donc inutile d'ajouter 34.
    Ceci devrait suffire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.nomComboBox.RowSource = "INDEX!A3:A" & Sheets("INDEX").Cells(1, 1).End(xlDown).Row
    Comme tu utilises
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("INDEX").Cells(1, 1).End(xlDown).Row
    plusieurs fois, il vaut mieux le stocker dans une variable. Comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim maLigne As Integer
    maLigne = Sheets("INDEX").Cells(1, 1).End(xlDown).Row
          Me.nomComboBox.RowSource = "INDEX!A3:A" & maLigne
          Me.fenginComboBox.RowSource = "INDEX!B3:B" & maLigne
          Me.enginComboBox.RowSource = "INDEX!C3:C" & maLigne
          Me.typeoperationComboBox.RowSource = "INDEX!D3:D" & maLigne
          Me.tempsComboBox.RowSource = "INDEX!E3:E" & maLigne
    Attention, ceci ne fonctionnera que si, dans la feuille INDEX, les cellules A1, A2 et A3 au minimum sont remplies. Si l'une des trois est vide, ce code ne fonctionnera alors pas.

    Dernière question subsidiaire (pas facile sans avoir le fichier sous la main ;-)) :
    Ta ligne d'entête dans la feuille INDEX possède quel numéro? 2? 3?

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

Discussions similaires

  1. problème indice avec combobox
    Par walid kh dans le forum VB.NET
    Réponses: 2
    Dernier message: 16/03/2010, 10h51
  2. problème avec combobox
    Par reverse_engineer dans le forum Struts 1
    Réponses: 5
    Dernier message: 13/07/2008, 19h20
  3. Problème Jdk avec combobox
    Par donnadieujulien dans le forum Composants
    Réponses: 11
    Dernier message: 08/07/2008, 11h53
  4. Problème avec Combobox et XML
    Par gstephane dans le forum Flex
    Réponses: 0
    Dernier message: 20/01/2008, 12h59
  5. [AS2] Problème avec ComboBox lors création d'un composant perso
    Par aldo-tlse dans le forum ActionScript 1 & ActionScript 2
    Réponses: 12
    Dernier message: 24/05/2006, 18h51

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