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 combobox selon conditions dans une plage


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Novembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Rédacteur technique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 38
    Par défaut remplir combobox selon conditions dans une plage
    Bonjour à tous;

    Je souhaiterai afficher dans un combobox une liste appartenant a une colonne sous conditions de la valeur d'une autre colonne.
    j'arrive a le faire pour une condition appartenant a la même colonne mais là , je cale...........!!

    Mon exemple en pièce jointe

    Merci d'avance et bon dimanche
    Phil
    Fichiers attachés Fichiers attachés

  2. #2
    Membre averti
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Novembre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Rédacteur technique

    Informations forums :
    Inscription : Novembre 2014
    Messages : 38
    Par défaut
    Bon en cherchant un peu, j'ai enfin réussi a trouver ::

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim c As Range
    Sheets("feuil1").Range("b2:c80").Select '.End(xlDown).Row
        For Each c In Selection
            If c = "operateur" Then ComboBox1.AddItem c.Offset(0, -1)
        Next
    Désolé et merci quand meme
    Phil

  3. #3
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Ce vilain Select suivi de Selection ! --->>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each c In Sheets("feuil1").Range("b2:c80").cells
      If c = "operateur" Then ComboBox1.AddItem c.Offset(0, -1)
    Next

  4. #4
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Bonjour

    Et si tu fais les 2 tests suivants, lequel preferes-tu? TestB ou TestBC ?

    TestBC porte sur "b2:C80"
    TestB porte sur "b2:b80"


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub testBC()
     
    For Each c In Sheets("feuil1").Range("b2:C80").Cells
     c.Select
     Stop
      If c = "operateur" Then ComboBox1.AddItem c.Offset(0, -1)
    Next
     
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Sub testB()
     
    For Each c In Sheets("feuil1").Range("b2:B80").Cells
     c.Select
     Stop
      If c = "operateur" Then ComboBox1.AddItem c.Offset(0, -1)
    Next
     
    End Sub

  5. #5
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    TestBC porte sur range ("b2:C80")

    TestB porte sur range ("b2:b80")

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each c In Sheets("feuil1").Range("b2:C80").Cells
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each c In Sheets("feuil1").Range("b2:b80").Cells

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Il devrait suffire d'appliquer ce code à la seule colonne comportant les fonctions (La colonne C ? La colonne B ? Je l'ignore car il me faudrait ouvrir le classeur, ce que je ne fais pas).

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 04/03/2014, 14h05
  2. Réponses: 6
    Dernier message: 23/11/2012, 09h06
  3. Réponses: 1
    Dernier message: 21/01/2011, 10h17
  4. [XL-2003] Calcul de moyenne dans une plage avec condition
    Par flo21000 dans le forum Excel
    Réponses: 7
    Dernier message: 24/07/2009, 19h31
  5. Condition dans une combobox
    Par ananis dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/01/2008, 00h19

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