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 :

Impossible de définir la propriété Visible de la classe Sheets [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut Impossible de définir la propriété Visible de la classe Sheets
    Bonjour a tous,

    J'ai un problème dans une de mes macros sur un fichier excel.
    En faite je voudrais qu'en fonction de certain paramètre il y est plus ou moins d'onglets qui apparaissent ou non!

    Voila mon code :

    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
    Private Sub Worksheet_Change(ByVal Target As Range)
     
         Application.ScreenUpdating = False
     
         Sheets("1").Visible = False
         Sheets("2").Visible = False
         Sheets("3").Visible = False
         Sheets("4").Visible = False
         Sheets("5").Visible = False
         Sheets("6").Visible = False
         Sheets("7").Visible = False
         Sheets("8").Visible = False
         Sheets("9").Visible = False
     
        Sheets("10").Select
     
        If Range("D33") = "A" And Range("D36") = "B" And Range("D31") = "C" Then
        Worksheets(Array("2", "3")).Visible = True
        End If
     
        If Range("D33") = "A" And Range("D36") = "E" And Range("D31") = "X" Then
        Worksheets(Array("2", "4")).Visible = True
        End If
     
        If Range("D33") = "A" And Range("D36") = "E" And Range("D31") = "W" And Range("D51") = "Oui" Then
        Worksheets(Array("2", "5")).Visible = True
        End If
     
        Sheets("10").Select
     
     
    End Sub
    Je n'affiche pas toutes les lignes mais c'est un peu répétitif et l'essentiel est la! L'erreur que me renvoi excel est celle du titre :"Impossible de définir la propriété Visible de la classe Sheets".

    Donc voila je suis là pour répondre à vos questions, merci d'avance.

    Alex

  2. #2
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    Il y a de fortes chances que ça se produise car un moment ou un autre tu tentes de cacher toutes les feuilles de ton classeur, ce qui est interdit...


    cordialement,

    Didier

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut
    Citation Envoyé par Ormonth Voir le message
    tu tentes de cacher toutes les feuilles de ton classeur
    Je ne cache pas toute les feuilles j'en garde une (la numéro 10).

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Quand il te retournes le message d'erreur, il doit te proposer débogage, si tu coches, sur quelle ligne le code s'est-il arrêté ?

    cordialement,

    Didier

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut
    Sa dépend de ce que j'ai mis dans les cases de la feuille numéro 10 mais par exemple si je valide la condition suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    If Range("D33") = "A" And Range("D36") = "B" And Range("D31") = "C" Then
    Worksheets(Array("2", "3")).Visible = True 'surligne la ligne là
    End If

  6. #6
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets(Array("Feuil2", "Feuil5")).Visible = False 'ou True
    génère l'erreur si au moins l'une des feuilles est invisible
    boucle donc sur les 2 feuilles

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 5
    Par défaut
    Citation Envoyé par mercatog Voir le message
    boucle donc sur les 2 feuilles
    Je comprend pas ce que tu veux dire par sa!

    Tu me propose de faire une boucle et d'afficher les feuilles les une après les autres?

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/02/2015, 16h54
  2. [XL-2007] Impossible de définir le propriété locked de la classe Range
    Par nath-0-0 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/06/2010, 11h19
  3. Impossible de définir la propriété Weight de la classe Border
    Par Iloon dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/07/2008, 13h21
  4. Impossible de définir la propriété visible
    Par Kalvin_20 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/06/2008, 13h37
  5. Réponses: 1
    Dernier message: 21/08/2007, 15h23

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