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

bloquage de feuilles

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

D

denisbouchard

Guest
Bonjour,
1) J'aimerais avoir, sur excel 2007, si l'on peut rendre l'accès aux feuilles d'un workbook par l'utilisation de bouton dédiés (ça je sait faire), mais rendre interdit l'accès à ces mêmes feuilles par les "icones" les représentant en bas à gauche d'excel ("feuil", "Feuil", etc)?
2) Comment faire pour qu'un raccourci affiche automatiquement la feuille 1 à chaque lancement même si le dernier enregistrement n'était pas sur cette feuille?
Merci d'avance pour vos réponses
 
Re : bloquage de feuilles

Bonjour,

1)Je pense que le mieux est de les cacher (Rendre invisible dans le classeur en bas de la page) :

Code:
Private Sub Workbook_Open()
Worksheets(1).Visible = False
Worksheets(2).Visible = False
Worksheets(3).Visible = False
Worksheets(4).Visible = False
End Sub

Ensuite quand tu clique sur ton bouton pour ouvrir la feuille 1 :

Code:
Private Sub CommandButton1_Click()
Worksheets(1).Visible = True
Worksheets(1).Select
End Sub

2) Pour qu'une feuille soit active au démarrage :

Code:
Private Sub Workbook_Open()
Worksheets("NomDeLaFeuille").Select
End Sub
 
Dernière modification par un modérateur:
Re : bloquage de feuilles

Bonjour à tous,

Attention Vinc,
toutes les feuilles d'un classeur ne peuvent être cachées simultanément, il faut qu'il y en ait au moins une visible

autre remarque:
il y a trois possibilités concernant la propriété .Visible d'une feuille
elle peut être:
-1 xlSheetVisible -----------> Visible
0 xlSheetHidden ----------> Cachée
2 xlSheetVeryHidden ------> "Un peu mieux cachée"

tout dépend de ce que DenisBouchard veut au point de vue protection et/ou masquage

à+
Philippe
 
Re : bloquage de feuilles

Salut denisbouchard et le forum
Je ne connais pas 2007, mais je pense que ce ne doit pas être trop différent de 2003 (pour ce qui est des infos demandées)
"feuil", "Feuil" : À ma connaissance, ça risque d'être problématique : Excel se fout complétement des majuscules/minuscules => c'est deux fois le même onglet...
Vinc t'a donné les codes, juste quelques précisions :
- WorkBook_Open se trouve sur le module ThisWorkBook : case de gauche Workbook, case de droite, toutes les macros à lancement automatiques liées à celui-ci (entre autres, Open).
- Avant de rendre des feuilles invisibles, il faut s'assurer qu'une autre feuille est active, sous risque d'erreur.
- Ne connaissant rien d'autre que ton poste de ton problème, que des généralisés :
Une feuille peut être désignées par sa place dans le classeur : Sheets(1) - la première feuille du classeur, Sheets(5), la cinquième
Elle peut être reconnue par son nom : Sheets("AAB") - la feuille dont le nom de l'onglet s'appelle AAB

Une image, comme un bouton, peut être associée à une macro

Pour interdire l'accès à une feuille, on peut soit la rendre invisible (les onglets disparaissent, mais restent accessibles par le Menu Format>>Feuille>>Afficher), soit protéger ses cellules en écriture, mais laisser la possibilité de la visualiser (toute tentative d'écriture déclenchera une "erreur" Excel), soit faire qu'à chaque fois qu'on active la feuille, une macro la désactive et sélectionne la feuille de départ (ou une autre) (les onglets restent visibles, mais ne peuvent être sélectionnés).
A+
 
Re : bloquage de feuilles

-Pour répondre à "phlaurent55", il est possible de masquer toutes les feuilles d'un classeur. L'intérêt est d'afficher une UserForm au démarrage avec par exemple une gestion des droits d'affichage des feuilles...

Dans ThisWorkbook :
Code:
Private sub Workbook_BeforeClose(Cancel As Boolean)
 ThisWorkbook.Saved = True
End Sub

Private sub Workbook_Open()
 ThisWorkbook.Windows(1).Visible = False
End Sub

Private sub Workbook_WindowActivate(ByVal Wn As Window)
 ThisWorkbook.Windows(1).Visible = False
End Sub

Testé avec Excel 2007 🙂
 
- 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

Réponses
14
Affichages
2 K
L
Réponses
1
Affichages
1 K
Lucien31
L
C
Réponses
6
Affichages
2 K
Chalafraiz
C
C
Réponses
16
Affichages
7 K
chatomon
C
H
Réponses
6
Affichages
4 K
Helios67
H
H
Réponses
2
Affichages
7 K
H
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…