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 WORKSHEET


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Haïti

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2015
    Messages : 64
    Par défaut Impossible de définir la propriété VISIBLE de la classe WORKSHEET
    Bonsoir à tous, j'ai un sérieux problème avec ce code, j'espère que vous allez m'aider.
    Ce code doit à l'ouverture d'Excel cacher une série de feuilles, au départ le code fonctionnait très bien mais depuis la semaine dernière je reçoit un message
    IMPOSSIBLE DE DEFINIR LA PROPRIETE VISIBLE DE LA CLASSE WORKSHEET
    comment corriger s'il vous plait?
    Je vous remercie déjà pour votre aide

    Voici le 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
    Public Sub Workbook_Open()
    Sheets("Login").Visible = False
    Sheets("PAGE DE DEMARRAGE").Visible = True
    Sheets("PAGE DE DEMARRAGE").Select
    Sheets("ACCEUILADMINSYSTEM").Visible = False
    Sheets("TauxPrets28jours5vers").Visible = False
    Sheets("TauxPrets35jours5vers").Visible = False
    Sheets("TauxPrets14jours10vers").Visible = False
    Sheets("Acceuil").Visible = False
    Sheets("Prêt (28 jours) 60.0000").Visible = False
    Sheets("Prêt (28 jours) 70.5600").Visible = False
    Sheets("Prêt (35 jours) 60.0000").Visible = False
    Sheets("Prêt (35 jours) 70.5600").Visible = False
    Sheets("Prêt (14 jours) 60.0000").Visible = False
    Sheets("Prêt (14 jours) 70.5600").Visible = False
    Sheets("Feuil1").Visible = False
    End Sub

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2013
    Messages : 385
    Par défaut
    Bonjour,

    Dans un premier temps, je t'invite à utiliser les balise [CODE] pour ton code, ce sera beaucoup plus lisible pour tout le monde, et donc plus tu recevras potentiellement plus vide de l'aide.

    En général quand il y a une erreur de ce type sur la propriété Visible, c'est qu'une feuille a été renommée.
    Vérifie bien dans un premier temps que le nom de chaque feuille est le même dans Excel et dans ton code VBA.

  3. #3
    Invité de passage
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2024
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Janvier 2024
    Messages : 1
    Par défaut
    Bonsoir, je ne sais pas s'il est encore utile de répondre à ce post mais, dans le doute...

    Pour limiter le nombre d'erreur je conseille de simplifier dans un premier temps ton 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
    Public Sub Workbook_Open()
     
    ' Définition d'une page qui ne doit pas être fermé car excel affiche une erreur si nous essayons de fermer toutes les feuilles.
        Dim ThePage$ ' $ = As String
        ThePage="PAGE DE DEMARRAGE"
     
    ' On s'assure que notre page est ouverte - la valeur de la page visible est -1, cachée c'est 0 (Hidden) et super caché c'est 2 (VeryHidden)
        If Sheets(ThePage).Visible <> -1 then sheets(ThePage).Visible = xlSheetVisible
     
    ' Fermeture de toutes les autres feuilles
        Dim MyIndex% ' % = As Integer
        For MyIndex=1 to Sheets.count
            If Sheets(MyIndex).Name <> ThePage then Sheets(MyIndex).Visible = xlSheetHidden ' Remplacer xlSheetHidden par xlSheetVeryHidden si tu veux bloquer l'affichage possible par clic-droit sur les feuilles
        Next MyIndex
     
    End Sub
    Si contrairement à la première réponse, ton problème n'est pas dû au nom de page, c'est peut-être que ton classeur a été protégé.
    Dans ce cas, tu peux ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Sub Workbook_Open()
     
    ' Retrait de la protection du classeur
        Dim MyPass="Mot de passe de protection du classeur"
        ActiveWorkbook.Unprotect MyPass
     
    ' Définition d'une page qui ne doit pas être fermé car excel affiche une erreur si nous essayons de fermer toutes les feuilles.
    ...
     
    ' Protection du classeur
        ActiveWorkbook.Protect Password:=MyPass, Structure:=True, Windows:=False
     
    End Sub

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/02/2015, 16h54
  2. [Toutes versions] Impossible de définir la propriété Visible de la classe Sheets
    Par asgarh dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/06/2010, 16h00
  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