Userform / proteger feuille à la fermeture userform
5 réponses
Excel...lent
Bonsoir à tous,
J'ai un userform et je souhaiterais pour le finaliser savoir si cela est
possible de lier à sa croix de fermeture une action qui consisterait à
protéger la feuille à partir de laquelle je lance l'userform. ouf...
Je ne sais pas si j'ai été bien clair là mais bon j'ai essayé. lol
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques93
Bonjour Excel...lent,
Lors de la fermeture d'un UserForm, l'événement QueryClose est invoqué :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then MsgBox "Fermeture du UserForm par la croix" End If End Sub
Les différentes valeurs de CloseMode sont : vbFormControlMenu 0 vbFormCode 1 VbAppWindows 2 VbAppTaskManager 3
Bonsoir à tous,
J'ai un userform et je souhaiterais pour le finaliser savoir si cela est possible de lier à sa croix de fermeture une action qui consisterait à protéger la feuille à partir de laquelle je lance l'userform. ouf...
Je ne sais pas si j'ai été bien clair là mais bon j'ai essayé. lol
Merci de vos conseils.
Cordialement.
Excel...lent
-- Cordialement,
Jacques.
Bonjour Excel...lent,
Lors de la fermeture d'un UserForm, l'événement QueryClose est invoqué :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then
MsgBox "Fermeture du UserForm par la croix"
End If
End Sub
Les différentes valeurs de CloseMode sont :
vbFormControlMenu 0
vbFormCode 1
VbAppWindows 2
VbAppTaskManager 3
Bonsoir à tous,
J'ai un userform et je souhaiterais pour le finaliser savoir si cela est
possible de lier à sa croix de fermeture une action qui consisterait à
protéger la feuille à partir de laquelle je lance l'userform. ouf...
Je ne sais pas si j'ai été bien clair là mais bon j'ai essayé. lol
Lors de la fermeture d'un UserForm, l'événement QueryClose est invoqué :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then MsgBox "Fermeture du UserForm par la croix" End If End Sub
Les différentes valeurs de CloseMode sont : vbFormControlMenu 0 vbFormCode 1 VbAppWindows 2 VbAppTaskManager 3
Bonsoir à tous,
J'ai un userform et je souhaiterais pour le finaliser savoir si cela est possible de lier à sa croix de fermeture une action qui consisterait à protéger la feuille à partir de laquelle je lance l'userform. ouf...
Je ne sais pas si j'ai été bien clair là mais bon j'ai essayé. lol
Merci de vos conseils.
Cordialement.
Excel...lent
-- Cordialement,
Jacques.
Excel...lent
Bonsoir Jacques,
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose. Mon problème justement c'est que je n'arrive pas à ce que l'action de protéger la feuille à partir de laquelle je lance mon user soit prise en compte à la fermeture de l'user. Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then ActiveSheet.Protect End If End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui n'est pas protégée.
Y a t-il une solution à ton avis ?
Cordialement.
Marc
Bonsoir Jacques,
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose.
Mon problème justement c'est que je n'arrive pas à ce que l'action de
protéger la feuille à partir de laquelle je lance mon user soit prise en
compte à la fermeture de l'user.
Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then
ActiveSheet.Protect
End If
End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui
n'est pas protégée.
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose. Mon problème justement c'est que je n'arrive pas à ce que l'action de protéger la feuille à partir de laquelle je lance mon user soit prise en compte à la fermeture de l'user. Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then ActiveSheet.Protect End If End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui n'est pas protégée.
Y a t-il une solution à ton avis ?
Cordialement.
Marc
Pounet95
Bonjour, Je ne comprends pas bien ! Tu ouvres ton usf par quel moyen ? un bouton dans une feuille ? un menu ? A quoi veux-tu arriver ? A empêcher toute modif sur une feuille en particulier cad celle affichée 'sous' le usf ?
AMHA, bloque la sortie du usf par la croix ( évènement QueryClose ) et dans le code du bouton de fermeture de celui-ci tu mets de quoi protéger la dite feuille, non ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/ Conseillé : http://dj.joss.free.fr/netiquet.htm (charte, nétiquette, conseils, abréviations, souriettes...) http://www.excelabo.net/mpfe/connexion.php (connexion, conseils...)
"Excel...lent" a écrit dans le message de news:
Bonsoir Jacques,
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose. Mon problème justement c'est que je n'arrive pas à ce que l'action de protéger la feuille à partir de laquelle je lance mon user soit prise en compte à la fermeture de l'user. Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then ActiveSheet.Protect End If End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui n'est pas protégée.
Y a t-il une solution à ton avis ?
Cordialement.
Marc
Bonjour,
Je ne comprends pas bien !
Tu ouvres ton usf par quel moyen ? un bouton dans une feuille ? un menu ?
A quoi veux-tu arriver ? A empêcher toute modif sur une feuille en
particulier
cad celle affichée 'sous' le usf ?
AMHA, bloque la sortie du usf par la croix ( évènement QueryClose )
et dans le code du bouton de fermeture de celui-ci tu mets de quoi protéger
la dite feuille, non ?
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
Conseillé :
http://dj.joss.free.fr/netiquet.htm
(charte, nétiquette, conseils, abréviations, souriettes...)
http://www.excelabo.net/mpfe/connexion.php
(connexion, conseils...)
"Excel...lent" <vpco@free.fr> a écrit dans le message de news:
ethzY1vFGHA.2036@TK2MSFTNGP14.phx.gbl...
Bonsoir Jacques,
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose.
Mon problème justement c'est que je n'arrive pas à ce que l'action de
protéger la feuille à partir de laquelle je lance mon user soit prise en
compte à la fermeture de l'user.
Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then
ActiveSheet.Protect
End If
End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui
n'est pas protégée.
Bonjour, Je ne comprends pas bien ! Tu ouvres ton usf par quel moyen ? un bouton dans une feuille ? un menu ? A quoi veux-tu arriver ? A empêcher toute modif sur une feuille en particulier cad celle affichée 'sous' le usf ?
AMHA, bloque la sortie du usf par la croix ( évènement QueryClose ) et dans le code du bouton de fermeture de celui-ci tu mets de quoi protéger la dite feuille, non ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/ Conseillé : http://dj.joss.free.fr/netiquet.htm (charte, nétiquette, conseils, abréviations, souriettes...) http://www.excelabo.net/mpfe/connexion.php (connexion, conseils...)
"Excel...lent" a écrit dans le message de news:
Bonsoir Jacques,
Merci pour ton aide. J'avais déjà vu cette possibilité avec QueryClose. Mon problème justement c'est que je n'arrive pas à ce que l'action de protéger la feuille à partir de laquelle je lance mon user soit prise en compte à la fermeture de l'user. Regarde le code tel que je l'avais saisi :
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then ActiveSheet.Protect End If End Sub
Quoiqu'il arrive une fois l'user fermé je retrouve ma feuille dessous qui n'est pas protégée.
Y a t-il une solution à ton avis ?
Cordialement.
Marc
Excel...lent
Salut Pounet95,
En fait usf s'ouvre automatiquement à l'ouverture du classeur ( code ouverture dans ThisWorkbook ) Il s'ouvre avec une feuille derrière. Cette feuille contient les données des ListBox de usf. Je peux modifier ces listbox par usf (ajouter une donnée ou enlever une donnée). J'ai pris soins de masquer ces listes sur la feuille comma ça quand usf est fermé on est sur une page blanche. Sur la feuille il y a un bouton qui peut rappeler usf aussi.
Donc ce que je souhaiterais c'est qu'une fois que des maj ont été faites sur les contenus des ListBox par l'usf, quand usf se ferme on reprotège la feuille de données. ( Cette feuille est déprotégée au chargement de usf)
Merci pour ton interêt.
Cordialement.
Excel...lent
N'oubliez pas votre lampe à huile et votre casque et descendez dans ces mines d'or pour des explorations fructueuses : http://www.excelabo.net/ http://frederic.sigonneau.free.fr http://dj.joss.free.fr/ http://jacxl.free.fr http://www.cathyastuce.com/excel.htm
Salut Pounet95,
En fait usf s'ouvre automatiquement à l'ouverture du classeur ( code
ouverture dans ThisWorkbook )
Il s'ouvre avec une feuille derrière. Cette feuille contient les données des
ListBox de usf.
Je peux modifier ces listbox par usf (ajouter une donnée ou enlever une
donnée).
J'ai pris soins de masquer ces listes sur la feuille comma ça quand usf est
fermé on est sur une page blanche.
Sur la feuille il y a un bouton qui peut rappeler usf aussi.
Donc ce que je souhaiterais c'est qu'une fois que des maj ont été faites sur
les contenus des ListBox par l'usf, quand usf se ferme on reprotège la
feuille de données. ( Cette feuille est déprotégée au chargement de usf)
Merci pour ton interêt.
Cordialement.
Excel...lent
N'oubliez pas votre lampe à huile et votre casque et descendez dans ces
mines d'or
pour des explorations fructueuses :
http://www.excelabo.net/
http://frederic.sigonneau.free.fr
http://dj.joss.free.fr/
http://jacxl.free.fr
http://www.cathyastuce.com/excel.htm
En fait usf s'ouvre automatiquement à l'ouverture du classeur ( code ouverture dans ThisWorkbook ) Il s'ouvre avec une feuille derrière. Cette feuille contient les données des ListBox de usf. Je peux modifier ces listbox par usf (ajouter une donnée ou enlever une donnée). J'ai pris soins de masquer ces listes sur la feuille comma ça quand usf est fermé on est sur une page blanche. Sur la feuille il y a un bouton qui peut rappeler usf aussi.
Donc ce que je souhaiterais c'est qu'une fois que des maj ont été faites sur les contenus des ListBox par l'usf, quand usf se ferme on reprotège la feuille de données. ( Cette feuille est déprotégée au chargement de usf)
Merci pour ton interêt.
Cordialement.
Excel...lent
N'oubliez pas votre lampe à huile et votre casque et descendez dans ces mines d'or pour des explorations fructueuses : http://www.excelabo.net/ http://frederic.sigonneau.free.fr http://dj.joss.free.fr/ http://jacxl.free.fr http://www.cathyastuce.com/excel.htm
anonymousA
Bonjour,
c'est bien étrange car le code que tu donnes est juste et ne pose aucune difficulté en lui-même. Sauf si Activesheet n'est pas la feuille active que tu crois mais je suppose que bien evidemment ce n'est pas le cas. Y a t-il d'autres conditions dans ta proc que tu n'as pas évoqué ou dans la suite du workbook_open ?
A+
Bonjour,
c'est bien étrange car le code que tu donnes est juste et ne pose
aucune difficulté en lui-même. Sauf si Activesheet n'est pas la
feuille active que tu crois mais je suppose que bien evidemment ce
n'est pas le cas. Y a t-il d'autres conditions dans ta proc que tu n'as
pas évoqué ou dans la suite du workbook_open ?
c'est bien étrange car le code que tu donnes est juste et ne pose aucune difficulté en lui-même. Sauf si Activesheet n'est pas la feuille active que tu crois mais je suppose que bien evidemment ce n'est pas le cas. Y a t-il d'autres conditions dans ta proc que tu n'as pas évoqué ou dans la suite du workbook_open ?