Comment masquer des feuilles sans utiliser "xlsheetveryhidden"
qbga
-
Frenchie83 Messages postés 2254 Statut Membre -
Frenchie83 Messages postés 2254 Statut Membre -
Bonjour,
j'aimerai masquer les feuilles de classeur au démarrage de l'application,seulement j n'aimerai pas utiliser "xlsheetveryhidden" ni "xlsheethidden" car mon programme m'affiche constamment (imposible de définir la propriété visible de la classe worksheet) comme erreur quand j l'utilise,
voici le code que j'ai écrit et qui n marche pas pourtant ,
Dim nbre, cptr As Integer
Application.ScreenUpdating = False
nbre = ThisWorkbook.Sheets.count
cptr = 2
For cptr = 2 To nbre
Sheets(cptr).Visible = xlSheetHidden
Next
Application.ScreenUpdating = False
j'aimerai masquer les feuilles de classeur au démarrage de l'application,seulement j n'aimerai pas utiliser "xlsheetveryhidden" ni "xlsheethidden" car mon programme m'affiche constamment (imposible de définir la propriété visible de la classe worksheet) comme erreur quand j l'utilise,
voici le code que j'ai écrit et qui n marche pas pourtant ,
Dim nbre, cptr As Integer
Application.ScreenUpdating = False
nbre = ThisWorkbook.Sheets.count
cptr = 2
For cptr = 2 To nbre
Sheets(cptr).Visible = xlSheetHidden
Next
Application.ScreenUpdating = False
A voir également:
- Impossible de définir la propriété visible de la classe worksheet
- Comment faire un livret avec des feuilles a4 - Guide
- Comment utiliser chromecast sur tv - Guide
- Comment appeler en masquer - Guide
- Comment masquer ses amis sur facebook - Guide
- Utiliser iphone comme webcam - Guide
8 réponses
Bonjour,
tu devrais le faire en pas à pas pour voir si c'est une feuille précise.
Pas de raison que ça ne marche pas.
Et xlSheetHidden = 0 = False : aucune différence
A tout hasard déposer le fichier xls (réduit au nécessaire et anonymisé) sur cjoint.com et coller ici le lien fourni.
eric
tu devrais le faire en pas à pas pour voir si c'est une feuille précise.
Pas de raison que ça ne marche pas.
Et xlSheetHidden = 0 = False : aucune différence
A tout hasard déposer le fichier xls (réduit au nécessaire et anonymisé) sur cjoint.com et coller ici le lien fourni.
eric
Frenchie83,mème cela n marche pas
j vais plutot faire pas à pas comme la dit eriiic,pour voir si l problème réside sur les feuille,et autre question doit faire également just après le code pour masquer ,un code pour démarsquer,?j sais que avec xlsheetveryhidden c'est obligatoire ,mais avec xlsheethidden jne sait pas
j vais plutot faire pas à pas comme la dit eriiic,pour voir si l problème réside sur les feuille,et autre question doit faire également just après le code pour masquer ,un code pour démarsquer,?j sais que avec xlsheetveryhidden c'est obligatoire ,mais avec xlsheethidden jne sait pas
Bonjour qbga
Je suis étonné que cela ne marche pas chez toi, alors que cela marche très bien chez moi. Ton classeur ne serait-il pas protéger?
Ouvre un nouveau classeur et refait un essai toujours avec cette ligne de code
Sheets(cptr).Visible = False
bien que ce n'est pas d'incidence, la dernière ligne de ton code doit être:
Application.ScreenUpdating = true
cordialement
Je suis étonné que cela ne marche pas chez toi, alors que cela marche très bien chez moi. Ton classeur ne serait-il pas protéger?
Ouvre un nouveau classeur et refait un essai toujours avec cette ligne de code
Sheets(cptr).Visible = False
bien que ce n'est pas d'incidence, la dernière ligne de ton code doit être:
Application.ScreenUpdating = true
cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
nbre = ThisWorkbook.Sheets.count => nombre de feuille du classeur de la macro.
Si tu lances la macro avec un autre classeur d'actif qui a moins de feuilles tu auras une erreur puisque tu masques les feuilles de ce classeur.
eric
nbre = ThisWorkbook.Sheets.count => nombre de feuille du classeur de la macro.
Si tu lances la macro avec un autre classeur d'actif qui a moins de feuilles tu auras une erreur puisque tu masques les feuilles de ce classeur.
eric
Bonjour
Merci bocoup pour vos aide en combinant les choses ,je me suis rendue compte que mon classeur était protégé,finalement Sheets(cptr).Visible = False,a marché a perfection,
eriic j'ai également corrigé ta remarque
foo,j pas très bien saisie ton code,pour l feuille,j'ai au moins une quarantaine de feuille a masquer,si j comprend bien ton code j serai tenu de donner un code a chaque feuille,c sera long et pénible
Merci encore à vous
heu encore une petite question,y a t'il un code pour numéroté automatiquement les pages a l'affichage? c'est a dire après l 'utilisation du count j 5 feuilles par exemple,j fais une boucle qui met visible sur true et a chaque affichage me met ds une celleule A2 par ex "page 1/5" ainsi de suite jusqu'à "page 5/5"
Désolé pour tout ça j suis novice en programmation
merci
Merci bocoup pour vos aide en combinant les choses ,je me suis rendue compte que mon classeur était protégé,finalement Sheets(cptr).Visible = False,a marché a perfection,
eriic j'ai également corrigé ta remarque
foo,j pas très bien saisie ton code,pour l feuille,j'ai au moins une quarantaine de feuille a masquer,si j comprend bien ton code j serai tenu de donner un code a chaque feuille,c sera long et pénible
Merci encore à vous
heu encore une petite question,y a t'il un code pour numéroté automatiquement les pages a l'affichage? c'est a dire après l 'utilisation du count j 5 feuilles par exemple,j fais une boucle qui met visible sur true et a chaque affichage me met ds une celleule A2 par ex "page 1/5" ainsi de suite jusqu'à "page 5/5"
Désolé pour tout ça j suis novice en programmation
merci
Bonjour
Si j'ai bien compris, tu veux numéroter que les feuilles visibles, alors essaies ceci
sur chaque feuille visible, par exemple sur un total de 3 feuilles, en cellule A2 tu auras 1/3, 2/3, 3/3
Si j'ai bien compris, tu veux numéroter que les feuilles visibles, alors essaies ceci
sur chaque feuille visible, par exemple sur un total de 3 feuilles, en cellule A2 tu auras 1/3, 2/3, 3/3
Sub NumérotationDesFeuillesVisibles()
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then Sheets(i).Range("A2").Value = "'" & i & "/" & Sheets.Count
Next i
End Sub
Bonjour
Voila une routine
Sub RemiseForm()
ActiveWorkbook.Unprotect
Feuille = F04.Name ' F04 = Code name de la feuille
F04.Visible = -1
For Each Feuil In Worksheets
If Feuil.Name <> Feuille Then
Feuil.Visible = 2
End If
Next
F04.Select
ActiveWorkbook.Protect
End Sub
Valider Sur excel 2002 et 2007
A+
Maurice
Voila une routine
Sub RemiseForm()
ActiveWorkbook.Unprotect
Feuille = F04.Name ' F04 = Code name de la feuille
F04.Visible = -1
For Each Feuil In Worksheets
If Feuil.Name <> Feuille Then
Feuil.Visible = 2
End If
Next
F04.Select
ActiveWorkbook.Protect
End Sub
Valider Sur excel 2002 et 2007
A+
Maurice