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

Code avant de maximiser le classeur

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

R

relboua

Guest
Bonjour,

Je souhaiterai savoir s'il est possible d'affecter un mot de passe quand l'on maximise un classeur.
J'ai beau cherché sur différent forum mais en vain.

Merci d'avance pour l'aide que vous m'apporterez!
 
Re : Code avant de maximiser le classeur

Bonjour relboua,

Je ne sais pas si ça correspond mais dans la Protection du classeur, tu as la possibilité de protéger la taille des fenêtres (ça veut dire que l'utilisateur ne pourra pas maximiser (agrandir) la taille de la fenêtre)
 
Re : Code avant de maximiser le classeur

Salut relboua,

1) Qu'entends-tu par maximiser ? car ça peut vouloir dire plusieurs choses, exemple: agrandissement de la fenêtre d'application excel, agrandissement de la fenêtre du classeur dans l'application excel...

2) Pour appliquer un mot de passe, tu peux-mettre cette ligne de code: ActiveWorkbook.Password = InputBox ("Enter Password")
 
Re : Code avant de maximiser le classeur

Bonjour à tous,

Tout d'abord je vous remercie d'avoir répondu à mon problème.
J'ai essayer l'instruction suivante que vous m'avez communiquer : ActiveWorkbook.Password = InputBox ("Enter Password"), mais je n'arrive pas à obtenir ce que je veux.

Je pense avoir mal exposer mon problème. A l'aide d'une macro, lors de l'ouverture du fichier Excel ce dernier se "minimise" (se rabat). Ce classeur doit être accessible qu'à certaines personnes, c'est pour cela que je souhaiterai affecter un mot de passe lors de la "maximisation" du classeur.

PS: les renseignements présents sur le la "Feuil1" seront renseignés par la suite à l'aide d'UserForm mais seulement certaines personnes auront accès à la "Feuil1".

Encore un fois merci.
 

Pièces jointes

Re : Code avant de maximiser le classeur

Je viens de voir que j'ai oublier d'enlever le code que vous m'avez communiquer. Dons le mot de passe qu'il faut renseigner est " fikou"
 
Re : Code avant de maximiser le classeur

Salut relboua,

Je pense avoir mieux cerné ton problème. Essaye avec ce code (à noter que tu peux rajouter un for each class in worksheet... pour appliquer ton code à toutes les feuilles du classeur):

Private Sub Workbook_Open()

ActiveWindow.WindowState = xlMinimized

End Sub

Private Sub Workbook_WindowResize(ByVal Wn As Window)

If ActiveWindow.WindowState = xlMaximized Then

ActiveSheet.Protect Password:="fikou", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlNoSelection

ElseIf ActiveWindow.WindowState = xlMinimized Then

ActiveSheet.Unprotect Password:="fikou"

End If

End Sub
 
Re : Code avant de maximiser le classeur

bonjour,
une autre idée, pourquoi ne pas masquer la feuille et ne permettre de la rendre visible qu'avec un MdP (connu des seules personnes concernées), comme ça, même si quelqu'un veut maximiser le classeur, il n'y verra rien

à+
 
Re : Code avant de maximiser le classeur

Salut,

Un grand merci pour ton aide Nairolf cela fonctionne à merveille !! En effet Nairolf il serait très judicieux d'appliquer ce code à toute les feuilles du classeur. Mais comment fais tu pour affecter toutes tes feuilles à la variable "class" ?

Ton idée francedemo est génial car je pourrai l'appliquer à d'autres feuilles, qui sont en quelques sortes l'endroit ou je vais gérer les informations renseigné dans les UserForm avant de les intégrer dans la feuil1. Comment pourrais tu procéder ?

Mais compétence en VBA sont minable mais je compte bien apprendre et apprendre !!!
Un grand merci.
 
Re : Code avant de maximiser le classeur

avec un truc du style :

"Sheets("NomOnglet").Visible = 0"

ça la passe en "Hidden", il faudrait prévoir plutôt un macro avec un bouton et la mettre en "VeryHidden" => code = 2

Code:
Private Sub CommandButton1_Click()

If Environ("UserName") = "xx.xxxx" Then Sheets("NomOnglet").Visible = -1

end sub
 
Dernière édition:
Re : Code avant de maximiser le classeur

Salut francedemo,

relboua, voici le code permettant d'appliquer un code à toutes les feuilles d'un classeur (j'ai préféré mettre feuille en nom de variable au lieu de class qui peut être ambigu):
Dim feuille As Worksheet
For Each feuille In Worksheets
'le code
Next class
 
Re : Code avant de maximiser le classeur

Bonjour à tous,

J'espère que vous avez passer une bonne soiré !

Nairolf ton code fonctionne à merveille à un bémol près. En effet pour que la il faut qu'elle soit active au moment de la "minimisation" => problème car au démarrage c'est la Feuil1 qui est active et pas les autres.

Francedemo je doit surement louper un truc avec ton code car à l'exécution du code la feuil2 se supprime !!
 
Re : Code avant de maximiser le classeur

Salut Nairolf,

Un grand merci pour le temps que tu as consacré afin de me venir en aide !!
J'ai essayer d'appliquer ce que tu viens de me dire mais msg d'erreur. J'ai donc opté pour ce code et j'obtiens ce que je veux (un peu long mais l'essentiel c'est que ça fonctionne):

*/*/*/*/*/*/*/*/*/

If ActiveWindow.WindowState = xlMaximized Then

ActiveSheet.Protect Password:="fikou", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlNoSelection
Sheets("feuil2").Select
ActiveSheet.Protect Password:="fikou", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlNoSelection
Sheets("feuil1").Select


ElseIf ActiveWindow.WindowState = xlMinimized Then

ActiveSheet.Unprotect Password:="fikou"
Sheets("feuil2").Select
ActiveSheet.Unprotect Password:="fikou"
Sheets("feuil1").Select

End If
/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*

Et merci à tous pour votre aide !!
 
Re : Code avant de maximiser le classeur

J'ai essayé avec ce code de protection et ça marche:
Code:
Dim feuille As Worksheet

For Each feuille In Worksheets
    
    feuille.Select
    feuille.Protect Password:="fikou", DrawingObjects:=True, Contents:=True, Scenarios:=True
    feuille.EnableSelection = xlNoSelection

Next feuille
 
- 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
17
Affichages
876
  • Question Question
Microsoft 365 Classeur disparu
Réponses
19
Affichages
1 K
Réponses
2
Affichages
159
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…