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 :

Combobox hors userform [XL-2007]


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
    Country Finance Manager
    Inscrit en
    Juin 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Country Finance Manager

    Informations forums :
    Inscription : Juin 2014
    Messages : 38
    Par défaut Combobox hors userform
    Bonjour le forum,

    J'ai une interrogation sur les combobox hors userform, j'en appelle à vous car je n'ai pas trouvé de tutos suffisamment clairs :/
    Mon problème est le suivant :
    j'ai créé une combobox dans la feuil2 :"Consultation des comptes" (fichier ci-après :Suivi comptes financiers - Vquestions.xlsm) celle-ci est actualisée à chaque ouverture de fichier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_Open()
    Feuil2.CB_tri_compte.ListFillRange = "Selection_comptes"
    Feuil2.CB_tri_compte.Text = "tous les comptes"
    Et un tri du tableau des comptes en feuil2 :"consultation des comptes" est opéré lorsque l'on sélectionne une valeur dans ce combobox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub CB_tri_compte_Click()
    Dim val As String
    val = CB_tri_compte.Value
    Feuil2.Activate
    If val = "Tous les comptes" Then
    ActiveSheet.ListObjects("TableauComptes").Range.AutoFilter Field:=1
    Else
    ActiveSheet.ListObjects("TableauComptes").Range.AutoFilter Field:=1, Criteria1:=val
    End If
    End Sub
    Maintenant lorsque je veux ajouter ou bien supprimer un compte, la macro bug à cause de la macro :"CB_tri_compte_Click()" or je trouve cela étrange car cette macro ne devrait s'activer uniquement lorsque je change la valeur du combobox (enfin si j'ai bien compris le principe).
    J'imagine que cela vient du fait que je modifie la liste de référence de la combobox, existe-il un moyen de n'activer cette macro "CB_tri_compte_Click()" UNIQUEMENT lorsque je clique sur la combo ?

    ps : je tiens à préciser que cette macro "CB_tri_compte_Click()" fonctionne parfaitement si je ne touche pas les macro ajouter ou supprimer un compte

    J'espère avoir été suffisamment clair

    Un grand merci d'avance pour vos réponses

    Thallhos

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 414
    Par défaut
    Ajouter ce code dans la sub ecrire_comptes() semble solutionner le problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Feuil2.CB_tri_compte.ListFillRange = ""
    With Sheets(Feuil8.Name)
        ...
    End With
    Feuil2.CB_tri_compte.ListFillRange = "Selection_comptes"
    Cordialement.

  3. #3
    Membre extrêmement actif
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1 369
    Par défaut
    Bonjour,

    Eviter ListFillRange. Si la source est modifiée, cela provoque des événements endogènes.

    Utiliset List

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Feuil2.CB_tri_compte.List = "Selection_comptes".value
    Boisgontier

  4. #4
    Membre averti
    Homme Profil pro
    Country Finance Manager
    Inscrit en
    Juin 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Country Finance Manager

    Informations forums :
    Inscription : Juin 2014
    Messages : 38
    Par défaut re
    Bonjour Eric, Bonjour Boisgontier,

    Un grand merci pour vos suggestions et réponses, merci Eric pour ce tuyau ca marche nikel, j'ai aussi remplacé l'écriture listfillrange par list en attribuant la valeur "Selection_comptes" à une variable pour pouvoir faire variable.value. En revanche avec l'écriture .list j'avais aussi un message d'erreur au même endroit.

    Bonne journée à vous deux,

    Thallhos

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

Discussions similaires

  1. Combobox dans userform
    Par syllage dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/09/2009, 18h21
  2. Combobox filtré Userform
    Par guirou59 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/12/2007, 14h18
  3. remplir une cellule excel a partir d'un combobox en userform
    Par rocofolie dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/09/2007, 15h54
  4. [VBA-E] ComBox hors Userform
    Par Yoshiblow dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/12/2006, 08h57
  5. (VBA-E) Problème combobox dans userform
    Par gringo69 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/06/2006, 18h28

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