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 :

remplir une combobox avec condition


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 201
    Points : 73
    Points
    73
    Par défaut remplir une combobox avec condition
    Bonjour je souhaiterai quand je selectionne "Chape béton" dans la combobox cboNatparoi limiter les valeurs dans cboEpaisParoi à 2;3;4;5;6;7;8;9 et 10 et de 10 à 30 dans le cas contraire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    For i = 0 To 40
        Me.cboSurFen.AddItem i
        If i < 21 Then
            Me.cboEpaisParoi.AddItem 10 + i
            Me.cboEpaisAsso.AddItem 10 + i
            Me.cboEpaisVoile.AddItem 10 + i
            Me.cboEpaisMit.AddItem 10 + i
         End If
    Next i
    j'ai fait cmme ça mais ça marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     for i=0 To 40 
       if cboNatParoi.text="Chape béton" then
         if i<8 then
         Me.cboEpaisParoi.AddItem 2 + i
         end if
       else
         if i<21 then
         Me.cboEpaisParoi.AddItem 10 + i
         end if 
       end if
    next i

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Bonjour,

    Sauf erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Me.cboEpaisParoi.Clear
    If cboNatParoi.Text = "Chape béton" Then
         For i = 2 To 10
            Me.cboEpaisParoi.AddItem i
         Next i
    Else
         For i = 10 To 30 Step 10
            Me.cboEpaisParoi.AddItem i
         Next i
    End If
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 201
    Points : 73
    Points
    73
    Par défaut
    ça ne marche toutjours pas vba semble ne pas tenir compte d ela condition :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    For i = 0 To 40
        Me.cboSurFen.AddItem i
     
        If i < 21 Then
            'Me.cboEpaisParoi.AddItem 10 + i
            Me.cboEpaisAsso.AddItem 10 + i
            Me.cboEpaisVoile.AddItem 10 + i
         End If
     
     
       Next i
        Me.cboEpaisParoi.Clear
    If Me.cboNatParoi.Text = "Chape béton" Then
         For i = 2 To 10
            Me.cboEpaisParoi.AddItem i
         Next i
    Else
         For i = 10 To 30 'Step 10
            Me.cboEpaisParoi.AddItem i
         Next i
    End If

  4. #4
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Tu as ajouté des lignes de code par rapport à la problématique initiale. J'ai testé le code que je t'ai fourni. Il fonctionne. Sors-le de la boucle :

    Tel que testé, voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub UserForm_Activate()
        Me.cboEpaisParoi.Clear
        Me.cboNatParoi.Clear
        Me.cboNatParoi.AddItem "Chape béton"
        Me.cboNatParoi.AddItem "Autre chose"
    End Sub
     
    Private Sub cboNatParoi_Change()
        Me.cboEpaisParoi.Clear
        If cboNatParoi.Text = "Chape béton" Then
             For i = 2 To 10
                Me.cboEpaisParoi.AddItem i
             Next i
        Else
             For i = 10 To 30 Step 10
                Me.cboEpaisParoi.AddItem i
             Next i
        End If
    End Sub
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 201
    Points : 73
    Points
    73
    Par défaut
    en effet ça marche ! Merci pour votre aide

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

Discussions similaires

  1. Remplir une ComboBox avec une plage de cellule
    Par zazaraignée dans le forum Contribuez
    Réponses: 2
    Dernier message: 02/03/2012, 18h07
  2. [VBA-E] Comment remplir une comboBox avec une macro
    Par Tchupacabra dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/04/2007, 11h16
  3. [C#] Remplir une combobox avec le champs d'une table Access
    Par Damsou dans le forum Windows Forms
    Réponses: 4
    Dernier message: 23/06/2005, 15h31
  4. [VB.NET] Remplir une ComboBox avec une requete sql
    Par graphicsxp dans le forum Windows Forms
    Réponses: 6
    Dernier message: 22/03/2005, 15h29
  5. Réponses: 2
    Dernier message: 26/07/2004, 13h34

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