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 :

Probleme Code VBA combobox en cascade


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Statisticien
    Inscrit en
    Août 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Statisticien

    Informations forums :
    Inscription : Août 2018
    Messages : 2
    Par défaut Probleme Code VBA combobox en cascade
    * Bonjour *
    Pouvez-vous me dire ce qu'il y a de mal avec ce code svp? En PJ le fichier

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Private Sub UserForm_Initialize()
     
    Colonne = 2 
     
    Sheets("SOURCE").Range("B2:W2").Interior.ColorIndex = Clear
     
    ' on utilise une boucle qui va charger les noms des régions dans la liste déroulante
    Do While Cells(2, Colonne).Value <> ""
     
        Form_alevin.ComboBox2.AddItem Cells(2, Colonne).Value
     
        Colonne = Colonne + 1 'on incrémente le numéro de colonne afin de passer à la colonne
    Loop
     
    End Sub
     
    'Jusqu'ici OK, mais ici il y a un problème
     
    Private Sub ComboBox2_Change()
    I = 2
    Form_alevin.ComboBox3.Clear
    Sheets("SOURCE").Range("B2:W2").Interior.ColorIndex = Clear
     
    Do While Cells(2, I).Value <> ""
        If Cells(2, I).Value = ComboBox3.Value Then
     
            Cells(2, I).Select
     
            ActiveCell.Interior.ColorIndex = 32
     
            Colonne = ActiveCell.Column
        End If
     
        I = I + 1
    Loop
     
    J = 3
    Do While Cells(J, Colonne).Value <> ""
     
        Form_alevin.ComboBox3.AddItem Cells(J, Colonne).Value
        J = J + 1
    Loop
    ComboBox3.ListIndex = 0
    End Sub
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Et bien déjà, cette instruction ne sert à rien d'autant plus que l'affectation de la valeur est fausse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sheets("SOURCE").Range("B2:W2").Interior.ColorIndex = Clear
    ça serait plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sheets("SOURCE").Range("B2:W2").Interior.ColorIndex = 0 'ou xlNone
    mais comme tu utilises un tableau structuré, c'est le style que tu doit changer avec la propriété "TableStyle" !

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