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 :

Affichage dans une listbox


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 148
    Points : 74
    Points
    74
    Par défaut Affichage dans une listbox
    Bonjour,

    je cherche à faire userform avec une listbox qui me permettra de masquer ou démasquer des feuilles situées dans un autre classeur.

    ce dernier est déjà ouvert lors d'une précédente macro.

    La liste des Onglet se trouve dans la colonne A située dans le classeur qui déclenche la macro.

    J'avais imaginé qu'au clic sur le bouton masquer un "1" serais mis dans la colonne B, et au clic sur le bouton démasquer je mettrais un "0".

    Donc dans ma listbox ne s'afficherais que les onglets qui ont un "0".

    Voici le début de mon code, mais j'avoue que je bloque pour la suite :

    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
    Private Sub CommandButton1_Click()
    Dim SitMoAffiche As String
    SitMoAffiche = ListBox1
     
    Windows("modele situation.xls").Activate
     
    Sheets(SitMoAffiche).Visible = True
     
      Windows("SITUATION INITIALE.xls").Activate
     
     
    End Sub
     
    Private Sub CommandButton2_Click()
    Dim SitMomMasque As String
    SitMomMasque = ListBox1
     
    Windows("modele situation.xls").Activate
     
     
    Sheets(SitMomMasque).Visible = xlSheetHidden
     
      Windows("SITUATION INITIALE.xls").Activate
     
    End Sub
     
    Private Sub ListBox1_Click()
     
    End Sub
    Private Sub UserForm_Initialize()
     
    ListBox1.ColumnHeads = True
    ListBox1.RowSource = "BDDSITUATION!A30:A65"
     
    End Sub
    Merci pour votre aide

    David

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Tu pourrais éviter de passer par une liste donglet tampon, et lire directement les onglets du classeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Private Sub UserForm_Initialize()
     
    Dim sh As Worksheet
     
    For Each sh In Workbooks("SITUATION INITIALE").Worksheets
        ListBox1.AddItem sh.Name
        If sh.Visible = xlSheetVisible Then
            ListBox1.Selected(ListBox1.ListCount - 1) = True
        Else
            ListBox1.Selected(ListBox1.ListCount - 1) = False
        End If
    Next sh
    End Sub
    Puis dans l’évènement Change de la listbox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub ListBox1_Change()
    Workbooks("SITUATION INITIALE").Sheets(ListBox1.List(ListBox1.ListIndex)).Visible = ListBox1.Selected(ListBox1.ListIndex)
    End Sub
    Jérôme

  3. #3
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 148
    Points : 74
    Points
    74
    Par défaut
    Bonjour Jérôme,

    merci pour cette réponse.

    Je viens de tester et le résultat est pas mal.

    Merci

    David

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

Discussions similaires

  1. Affichage dans une listbox
    Par kinglord dans le forum IHM
    Réponses: 18
    Dernier message: 01/02/2011, 02h57
  2. [Débutant] Probleme d'affichage dans une listbox
    Par toham dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 20/03/2010, 13h15
  3. Problème d'affichage dans une listbox
    Par swap_nibble dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 25/01/2008, 17h29
  4. Affichage dans une listbox
    Par egg3774 dans le forum IHM
    Réponses: 4
    Dernier message: 13/06/2007, 18h15
  5. Affichage d'un champ dans une listbox
    Par BigZ444 dans le forum Bases de données
    Réponses: 5
    Dernier message: 22/04/2007, 18h23

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