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

Sortire d'une macro

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 !

J-Charles

XLDnaute Occasionnel
Bonsoir à tous,
J’ai écris quelques lignes de commande afin de vérifier l’habilitation des utilisateurs de mes fichiers.
Code:
Sub TestHabilitation()
    If Environ("USERNAME") <> “Toto” And Environ("USERNAME") <> “Titi” _
        MsgBox "Vous n'avez pas d'habilitation pour traiter les dossiers."
        Exit Sub
    End If
End Sub
Comme j’utilise ces quelques lignes très souvent au début de mes macros et pour ne faire qu’une seule modification en cas de changement de nom, j’ai écrit cette macro en début du module et je l’appelle directement :
Code:
 call TestHabilitation.
au besoin.
Par exemple dans ma macro "Sub MiseForme()" , si l’utilisateur n’est pas autoriser il sort de la macro " Sub TestHabilitation() " grâce à la ligne " Exit Sub ", mais comment puis faire pour qu'il sorte également de la macro " Sub MiseForme() ".
Je vous remercie par avance de votre aide
 
Dernière édition:
Re : Sortire d'une macro

Bonsoir J-Charles, le fil,


Une solution parmi tant d'autre :

-> une variable public
-> exporter la partie final de ton code TestHabilitation.

Concrètement :
Code:
Public Autorisation As String
[COLOR="Green"]'Déclaration de ta variable public (variable utilisable dans toutes les macros de ton fichier)
[/COLOR]

Sub TestHabilitation()
[COLOR="Green"]' Ta macro TestHabilitation modifié[/COLOR]
    If Environ("USERNAME") <> “Toto” And Environ("USERNAME") <> “Titi”
        Autorisation = "Non autorisé"
    End If
End Sub

Sub MiseForme()

[COLOR="Green"]'...[/COLOR]

[COLOR="Blue"]Call TestHabilitation
If Autorisation = "Non autorisé" Then
   Exit Sub
End If[/COLOR]

[COLOR="Green"]'...[/COLOR]

End Sub

Code à insérer dans chacune de tes macro où tu veux vérifier si la personne est habilité!

Au lieu du précédent code :
Code:
Call TestHabilitation

Tu vois ce que je veux dire? Besoin de plus de détail?

Bonne soirée
 
Re : Sortire d'une macro

Bonsoir,
Je te remercie pour la rapidité et la limpidité de ta réponse. Je ne pourrais faire des essais que demain matin, mais toutes tes explications me paraissent très claires.
Encore merci et bonne soirée
 
Re : Sortire d'une macro

Bonsoir,

De rien. Un petit conseil en passant : pour plus de clarté, l'idéal c'est faire un module dédié uniquement à la déclaration des variables publics, et un autre module spécialement dédié à ta macro "TestHabilitation".

Ainsi, c'est deux "zones" importantes seront distinct de tes autres macros.

Autre conseil, étant donné que tu écris le mot de passe dans ta macro, pour éviter que le premier venu voit le mot de passe, pense à protéger tes macros par un mot de passe (à ne pas oublier évidement) 😀

Sinon, ben ... pour le reste, tiens nous au courant demain 😉

Bonne fin de soirée
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
358
Réponses
4
Affichages
586
Réponses
4
Affichages
735
Réponses
5
Affichages
914
Réponses
7
Affichages
367
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…