Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Test de présence de feuille visible

  • Initiateur de la discussion Initiateur de la discussion trankill076
  • 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 !

T

trankill076

Guest
Bonjour,

Presque toute la question est dans le titre: je cherche un moyen de tester si dans la fenêtre Excel ouverte (peut importe le nom et le nombre de classeurs) il se trouve au moins une feuille visible.
Les feuilles ouvertes cachées ne sont pas prises en compte.

Merci à vous
 
Re : Test de présence de feuille visible

Bonjour Trankill, bonjour le forum,

Le code ci-dessous affiche un message t'indiquant le nom du classeur et le nom de l'onglet de ce classeur si il est visible. Comme tu n'as pas précisé le type de test... Peut-être ça pourra t'aider.
Le code :
Code:
Sub Macro1()
Dim i As Byte 'déclare la variable i (incrément)
Dim cl As Workbook 'déclare la variable cl (CLasseur)
Dim o As Worksheet 'déclare la variable o (Onglet)

For i = 1 To Workbooks.Count 'boucle 1 : de 1 au nombre de classeurs ouverts
    Set cl = Workbooks(i) 'définit le classeur cl
    For Each o In cl.Sheets 'boucle 2 : sur tous les onglet du classeur cl
        'si l'onglet est visible affiche un message
        If o.Visible = True Then MsgBox "Classeur : " & cl.Name & Chr(13) & "Onglet : " & o.Name & " visible."
    Next o 'prochain onglet de la boucle 2
Next i 'prochain classeur ouvert de la boucle 1
End Sub
 
Re : Test de présence de feuille visible

@Robert: Je vient de tester

Le code détecte bien toutes les valeur .Visible des feuilles, le problème est que les feuilles contenues dans les fichiers XLSB ouvert automatiquement avec excel en mode caché (j'en ai deux, PERSONAL.XLSB et SCOPE.XLSB) ont tous deux une feuille dont l'attribut .Visible est "True" et qui pourtant ne sont pas affichée

Prévient moi si je m'explique mal
 
Re : Test de présence de feuille visible

Bonjour Trankill, bonjour le forum,

Oui le menu Fenêtre permet de masquer ou d'afficher des classeurs. Si tu veux omettres les classeurs masqués :
Code:
Sub Macro1()
Dim i As Byte 'déclare la variable i (incrément)
Dim cl As Workbook 'déclare la variable cl (CLasseur)
Dim o As Worksheet 'déclare la variable o (Onglet)

For i = 1 To Workbooks.Count 'boucle 1 : de 1 au nombre de classeurs ouverts
    Set cl = Workbooks(i) 'définit le classeur cl
    If cl.Name = "PERSONAL.XLSB" Or cl.Name = "SCOPE.XLSB" Then GoTo suite 'si le nom du classeur est "PERSONAL.XLSB" ou "SCOPE.XLSB", va à l'étiquette "suite"
    For Each o In cl.Sheets 'boucle 2 : sur tous les onglet du classeur cl
        'si l'onglet est visible affiche un message
        If o.Visible = True Then MsgBox "Classeur : " & cl.Name & Chr(13) & "Onglet : " & o.Name & " visible."
    Next o 'prochain onglet de la boucle 2
suite: 'étiquette
Next i 'prochain classeur ouvert de la boucle 1
End Sub
 
Re : Test de présence de feuille visible

Re-Bonjour

Ça à fonctionné à la perfection
J'ai remplacé la condition "If cl.Name = "PERSONAL.XLSB" Or cl.Name = "SCOPE.XLSB" Then GoTo suite"
par "If cl.Name Like "*.XLSB" Then GoTo suite" pour exclure tout fichier .XLSB

Merci beaucoup, j'y aurais jamais pensé seul ^_^
 
Re : Test de présence de feuille visible

Par contre j'ai eu la mauvaise idée de placer ce code dans le WorkBook.Open d'un fichier XLSB, ce qui fait que les autres classeurs n'ont pas le temps de s'ouvrir que le code à déjà considéré qu'aucune feuille n'étais visible, même s'il y en à une qui est en train d'être ouverte

J'ai essayé de mettre la macro en pause avec Wait mais c'est Excel dans son ensemble qui se met en pause, sans finir d'ouvrir ses classeurs

Je continue de chercher, si vous avez une idée n'hésitez pas
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

D
  • Question Question
Réponses
5
Affichages
249
Didierpasdoué
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…