visibilité des feuilles d'un classeur lors d'une macro complémentaire.[resolu]

  • Initiateur de la discussion Initiateur de la discussion jeremx
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jeremx

XLDnaute Nouveau
bonjour à tous,
je sollicite votre aide car je trouve rien sur le net et aux bout de multiples recherches ça fatigue....

Mon pb est pas très compliqué en fait:

J'ai fait une macro complémentaire dans laquelle le code doit masquer des feuilles du classeur ouvert en cours:

****************************
Option Explicit


Sub Macro_version_revendeur()

'déclarations
Dim wb As Workbook

'initialisations
Set wb = Application.ActiveWorkbook

'code
wb.Sheets("PRE-DEVIS").Visible = False
wb.Sheets("Feuil22.Name").Visible = False

End Sub
*******************

La première ligne de code masque bien la feuille dont le nom est "PRE-DEVIS" du classeur ouvert.
Seulement, pour éviter que ça plante si des utilisateurs modifient le nom de la feuille, j'ai voulu utiliser le CodeName des feuilles. (voir seconde ligne de code).
Et là c'est le drame... il me dit que l'objet n'appartient pas à la sélection....

c'est un truc de fou: en désignant la feuille par son nom ça marche et en la désignant par son CodeName ça marche plus!

j'ai tenté de mettre le nom de la feuille (via le codename) dans un variable dans le classeur ouvert puis d'appeler (récupérer) cette variable avec la macro complémentaire mais sans résultats.... même en mettant la variable dans (déclaration) et en la déclarant "public".

Si quelqu'un à une idée je suis preneur!!!

merci bcp
 
Dernière édition:
Re : visibilité des feuilles d'un classeur lors d'une macro complémentaire.

Bonjour,

essaie ceci, "Feuil1" étant ici le "codename" de la feuille :
Code:
Dim wb As Workbook
Set wb = ActiveWorkbook
wb.Sheets(wb.VBProject.VBComponents("Feuil1").Properties(7).Value).Visible = xlSheetHidden

bon après midi
@+
 
Re : visibilité des feuilles d'un classeur lors d'une macro complémentaire.

Bonjour,

essaie ceci, "Feuil1" étant ici le "codename" de la feuille :
Code:
Dim wb As Workbook
Set wb = ActiveWorkbook
wb.Sheets(wb.VBProject.VBComponents("Feuil1").Properties(7).Value).Visible = xlSheetHidden

bon après midi
@+


Super ça marche merci beaucoup! par conte juste pour comprendre:
"wb.VBProject.VBComponents("Feuil1").Properties(7).Value" --> designe le nom de la feuille via le projet VBA, mais quel est ce numéro d'index après properties ??
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
7
Affichages
214
Retour