Macro : rien si pas activée

S

Sébbb

Guest
Re-Re Bonjour à tous,

Voilà, je cherchais un moyen "d'obliger" l'utilisateur à activer les macros et je suis tombé sur un fil avec une démo de Thierry (pièce jointe).
Moi, ce qui m'intéresse, c'est :
Si l'utilisateur active les macros, il peut travailler sur le fichier
Sinon bloqué.

Ce qui est représenté par la feuille Interface dans la démo (pou l'activation) et par Bidon (pour la désactivation)

Mais je ne comprends pas comment ça marche. Qd j'essaie de recopier le code sur un autre classeur, en remplaçant feuille "C" par "Feuil1", et ainsi pour toutes les feuilles, la macro RR ne fonctionne pas.

Quelqu'un peut-il m'aider à comprendre le fonctionnement pour pouvoir utiliser la même chose dans un autre fichier?

Merci à tous,
A bientôt
Sébbb
 
D

Dan

Guest
Bonjour,

Le fichier de Thierry comporte plusieures macros qu' sont dans VBA plutôt que via outils/macros....

Pour visualiser toutes les macros :

1. fais ALT+F11 pour accéder à VBA
2. Ctrl + R pour voir le projet VBA (à gauche)
3. dans les répertoires :
- Microsoft excel objects : les feuilles du classeur et Thisworkbook. En double cliquant sur chaque feuille tu peux voir les macros liées unqiuement aux feuilles. La macro dans thisworkbook (workbook open) est celle qui s'effectue à l'ouverture du fichier.
- Feuilles : là se trouvent les User forms. En double cliquant sur chacune d'elles tu eux aussi voir les macros concernées.
- Modules : une macro "Commun". Double clique sur cette macro pour voir la macro que tu as copiée probablement par menu/outils/macros.

Tu peux comprendre en ouvrant ton fichier en activant les macros et aller dans la feuille Thisworkbook. Clique sur la macro "private......open puis CTRL+F8. Ensuite appuie sur F8 pour faire avancer les macros. Tu verras ce qui se passe exactement.

Si pb n'héiste pas.

@+ Dan
 
D

DAn

Guest
Re,

La macro RR sert pour l'accès via mot de passe. Elle définit en fait R (Set R = C.Range(Z)) qui est en quelque sorte une valeur qui est contenue dans la plage "toto" de la feuille C. Si besoin, au lieu de recopier C.Range(Z) dans d'autres macros, on pourra tout simplement écrire "R".

Z étant une constante définie comme "Toto" dans la macro "Commun".
Toto est une cellule qui equivaut à ceci dans la feuille Confidential : =Confidential!$IV$65529 - tu peux voir cela en allant dans menu/insertion/nom/définir. Dans cette cellule, Thierry y a écrit son nom.

Ceci est probablement ce qui est lié au mot de passe Thierry-XLD dont parle Thierry dans la feuille "Interface"

Espérant que tu comprendras mes explications

@+ Dan
 

Discussions similaires

Statistiques des forums

Discussions
312 503
Messages
2 089 062
Membres
104 015
dernier inscrit
kkgk