Désactiver la protection d'une feuille depuis une macro?
1 réponse
Thomas
Bonjour,
Je souhaiterai savoir s'il est possible depuis une commande en VisualBasic
de désactiver la protection d'une feuille (en tapant le code de désactivation
depuis Visual Basic), de faire des modification sur cette feuille, puis de la
protéger à nouveau.
Je n'arrive pas à trouver cette commande.
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
David PONDA
salut Thom, quand tu parles de feuille, tu parles d'un formulaire (objet Form) de VB ? si oui je pense que tu dois essayer a mon humble avis de desactiver plutot tous les controles de ton form en les maskant en grisee et puis de refaire le contraire pur permetre les modifs... c'est la methode que j'utilise souvant... tres pratique : En VB ca donne ca ...
Private Sub Form_Load()
Dim ctrl As control For Each ctrl In Controls ctrl.Enabled úlse ' *** et tu places // True // pour reactiver les controles. Next ctrl
End Sub
mais attention meme les boutons de ton form seront desactiver donc je prefere avant de desactiver un controle, tu teste son type d'abord desactive que les cntroles suhaites. Ex. de teste pour voir si c'est un bouton :
For Each ctrl In Controls If ctrl.Name = "Command1" Then GoTo PasCeluiLa ' ** Si ton bouton s'appel Command1... etc ctrl.Enabled = False ' *** et tu places // True // pour reactiver les controles. PasCeluiLa: Next ctrl
"Thomas" a écrit dans le message de news:
Bonjour,
Je souhaiterai savoir s'il est possible depuis une commande en VisualBasic de désactiver la protection d'une feuille (en tapant le code de désactivation depuis Visual Basic), de faire des modification sur cette feuille, puis de la protéger à nouveau. Je n'arrive pas à trouver cette commande.
Merci.
salut Thom,
quand tu parles de feuille, tu parles d'un formulaire (objet Form) de VB ?
si oui je pense que tu dois essayer a mon humble avis de desactiver plutot
tous les controles de ton form en les maskant en grisee et puis de refaire
le contraire pur permetre les modifs... c'est la methode que j'utilise
souvant... tres pratique :
En VB ca donne ca ...
Private Sub Form_Load()
Dim ctrl As control
For Each ctrl In Controls
ctrl.Enabled úlse ' *** et tu places // True // pour
reactiver les controles.
Next ctrl
End Sub
mais attention meme les boutons de ton form seront desactiver donc je
prefere avant de desactiver un controle, tu teste son type d'abord desactive
que les cntroles suhaites.
Ex. de teste pour voir si c'est un bouton :
For Each ctrl In Controls
If ctrl.Name = "Command1" Then GoTo PasCeluiLa ' ** Si ton bouton s'appel
Command1... etc
ctrl.Enabled = False ' *** et tu places // True // pour reactiver les
controles.
PasCeluiLa:
Next ctrl
"Thomas" <Thomas@discussions.microsoft.com> a écrit dans le message de news:
8436A607-F107-410F-AE1E-1BC08537029D@microsoft.com...
Bonjour,
Je souhaiterai savoir s'il est possible depuis une commande en VisualBasic
de désactiver la protection d'une feuille (en tapant le code de
désactivation
depuis Visual Basic), de faire des modification sur cette feuille, puis de
la
protéger à nouveau.
Je n'arrive pas à trouver cette commande.
salut Thom, quand tu parles de feuille, tu parles d'un formulaire (objet Form) de VB ? si oui je pense que tu dois essayer a mon humble avis de desactiver plutot tous les controles de ton form en les maskant en grisee et puis de refaire le contraire pur permetre les modifs... c'est la methode que j'utilise souvant... tres pratique : En VB ca donne ca ...
Private Sub Form_Load()
Dim ctrl As control For Each ctrl In Controls ctrl.Enabled úlse ' *** et tu places // True // pour reactiver les controles. Next ctrl
End Sub
mais attention meme les boutons de ton form seront desactiver donc je prefere avant de desactiver un controle, tu teste son type d'abord desactive que les cntroles suhaites. Ex. de teste pour voir si c'est un bouton :
For Each ctrl In Controls If ctrl.Name = "Command1" Then GoTo PasCeluiLa ' ** Si ton bouton s'appel Command1... etc ctrl.Enabled = False ' *** et tu places // True // pour reactiver les controles. PasCeluiLa: Next ctrl
"Thomas" a écrit dans le message de news:
Bonjour,
Je souhaiterai savoir s'il est possible depuis une commande en VisualBasic de désactiver la protection d'une feuille (en tapant le code de désactivation depuis Visual Basic), de faire des modification sur cette feuille, puis de la protéger à nouveau. Je n'arrive pas à trouver cette commande.