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 :

Afficher deux feuilles en même temps et pas les autres


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut Afficher deux feuilles en même temps et pas les autres
    Bonjour,

    J'ai le code ci-dessus qui me permet d'afficher deux feuilles de calcul selon un choix fait dans une Combo.
    Par exemple, si je choisi L24 dans ma combo alors les feuilles "L24" et "FL24" sont visibles et les autres sont cachées, à part la feuille "Accueil".
    Hors avec mon code j'ai une erreur que je n'arrive pas à corriger, pouvez-vous m'apporter votre aide s'il vous plait ? Merci par avance.
    J'ai une incompatiblité de type sur la ligne ne rouge.

    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
    Private Sub CmbLigne_Change()
    Dim NomFeuille As String, Ws As Object
    Dim Feuille2 As String
    
        Application.ScreenUpdating = False
        
    'Je rends toutes les feuilles visibles
    
        For Each Ws In ActiveWorkbook.Worksheets
        Ws.Visible = True
    Next Ws
    
    'Je sélectionne la feuille du combo
        NomFeuille = Me.CmbLigne.Value
        Feuille2 = ("F" & Me.CmbLigne.Value)
        ActiveWorkbook.Sheets(NomFeuille).Activate
        ActiveWorkbook.Sheets(Feuille2).Activate
    'Je masque les autres feuilles
        For Each Ws In ActiveWorkbook.Worksheets
            If Ws.name <> NomFeuille And Feuille2 Then Ws.Visible = xlSheetVeryHidden        
    Sheets("Accueil").Visible = True
            Next Ws
    
    'Je ferme l'userform
    Unload Me
    End Sub

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    Effectivement car Feuille2 n'étant pas une variable numérique ! Donc condition à compléter …


    _____________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …


  3. #3
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Bonjour,

    J'ai modifié mon code de cette façon et cela fonctionne.

    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
     
    Private Sub CmbLigne_Change()
    Dim NomFeuille As String, Ws As Object
    Dim NomFeuil As String
     
        Application.ScreenUpdating = False
     
    'Je rends toutes les feuilles visibles
     
        For Each Ws In ActiveWorkbook.Worksheets
        Ws.Visible = True
    Next Ws
     
    'Je sélectionne la feuille du combo
        NomFeuille = Me.CmbLigne.Value
        NomFeuil = ("F" & Me.CmbLigne.Value)
        ActiveWorkbook.Sheets(NomFeuille).Activate
        ActiveWorkbook.Sheets(NomFeuil).Activate
    'Je masque les autres feuilles
        For Each Ws In ActiveWorkbook.Worksheets
            If Ws.name <> NomFeuille Then Ws.Visible = xlSheetVeryHidden
            Sheets("Accueil").Visible = True
            Sheets("F" & Me.CmbLigne).Visible = True
            Next Ws
     
    'Je ferme l'userform
    Unload Me
    End Sub
    Merci et bonne journée
    René

  4. #4
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 395
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        NomFeuille = Me.CmbLigne.Value
        NomFeuil = ("F" & Me.CmbLigne.Value)
    Attention à ce genre de codage casse-pipe, car on a vite confondu. !!

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 31/08/2012, 15h44
  2. Modifier deux champs en même temps!!!
    Par Invité dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 08/09/2005, 20h31
  3. Comptez sur deux tables en même temps
    Par genova dans le forum Langage SQL
    Réponses: 12
    Dernier message: 13/09/2004, 18h58
  4. [JFrame]pb de lancement de deux JFrame en même temps
    Par spoutyoyo dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 24/08/2004, 15h33
  5. Lancer deux sons en même temps...
    Par Julien_riquelme dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 03/05/2003, 17h00

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