Macro pour fichier verrouillé

Bonjour le forum,

J’ai une macro (gentiment développée par vba-new et par Dan) qui se trouve dans le fichier N°1. Cette macro ouvre le fichier N°2, fait copier-coller des données du fichier 1, met à jour le TCD, sauvegarde tous ces changements et ferme ce fichier N°2.

Le problème est que l’utilisateur du fichier N°2 veut / doit mettre un code et verrouiller le fichier. On suppose que le code du fichier sera 123456.

Est-ce que c’est possible ou faisable de modifier la macro existante pour qu’elle puisse travailler sur le fichier verrouillé ?

Si la réponse est positive, pourra quelqu’un me proposer le code à ajouter ?

Merci d’avance,

Baton

Bonjour,

Pour ouvrir ton fichier protégé, utilise cette syntaxe :

Workbooks.Open "C:\chemin\fichier.xls", , , , "123456"

Le mot de passe étant 123456 (attention au nombre de virgules, entre le nom du fichier, et le mot de passe)

Bonne journée

cousinhub a écrit :

Pour ouvrir ton fichier protégé, utilise cette syntaxe :

Workbooks.Open "C:\chemin\fichier.xls", , , , "123456"

Le mot de passe étant 123456 (attention au nombre de virgules, entre le nom du fichier, et le mot de passe)

Bonne journée

Cousinhub

Merci pour ta réponse!

J'ai oublié de marquer que je travaile sur Excel 2011 pour MAC. Quand même je n'ai pas indiqué qu'il faut fermer le fichier N°2 avec le même code.

merci

Re-,

Je ne pense pas qu'il y ait un problème, que ce soit MAC ou PC...(je n'ai pas de MAC, mais tu peux faire l'essai)

Pour la fermeture, tu utilises ce code :

Workbooks("fichier.xls").Close True

Le True pour signifier que tu enregistres les changements, sinon, tu mets False

Le mot de passe est toujours en vigueur...

Bonne journée

Re,

Merci beaucoup pour ton aide.

Je vais essayer tes recommandations.

Maintenant, je trouve que ce n’est pas si facile trouver comment on rajoute un code pour protéger un fichier. C’est facile sur PC mais je ne trouve pas comment ça marche sur MAC.

Baton

cousinhub a écrit :

Re-,

Je ne pense pas qu'il y ait un problème, que ce soit MAC ou PC...(je n'ai pas de MAC, mais tu peux faire l'essai)

Pour la fermeture, tu utilises ce code :

Workbooks("fichier.xls").Close True

Le True pour signifier que tu enregistres les changements, sinon, tu mets False

Le mot de passe est toujours en vigueur...

Bonne journée

Re-,

Je ne comprends pas bien ton dernier post.....

Pourquoi veux-tu rajouter un code pour protéger ton fichier?

Si tu l'as ouvert avec mon code, lorsque tu le refermes, icelui garde son mot de passe.....

Sinon, je passe la main à Dan (si tu nous entends), qui lui aussi travaille sous MAC....

Mais je ne pense pas qu'il y ait de différences entre un PC et un MAC, du moins dans cette partie de code....

A suivre

Bonsoir,

Je ne maitrise pas bien le français et pas toujours je suis capable de m'exprimer claire.

La situation est la suivante:

Il y a +-20 équipes et chaque équipe a sa base des données. Le responsable de chaque équipe veut éviter « la curiosité » de ses collègues et ne pas montres leurs données. C’est tout à fait légitime.

Pour promettre ca, il faut protéger les fichiers avec bases des données. La seule solution que j’y pense est éviter la possibilité d’ouvrir le fichier. Je ne connais pas autre type de solution. Si tu connais – propose !

Malheureusement, je ne trouve pas comment puis-je attribuer ( ?) à chaque fichier le code.

J’espère que maintenant je suis plus claire.

Baton

P.S. Dan est aux vacances.

Salut le forum

Regarde si cela fonctionne, la feuille 2 est cachée,

elle contient les noms des fichiers ainsi que leurs mots de passe respectifs.

Tu peux alors utiliser

Workbooks.Open "C:\chemin\" & Fichier(I), , , , Fichier(I).Offset(, 1)

Mytå

Bonjour,

La situation : il y a un grand immeuble. L’entre dans cet immeuble est libre et chacun peut y entrer. Par contre, il faut posséder la clé pour ouvrir la porte d’un appartement. Chaque habitant de cet immeuble peut donner la copie de sa clé à qui il souhaite. Ils ne veulent pas que quelqu’un qui ne possède pas la clé pourra entre dans l’appartement. Il y a un homme de ménage qui possède toutes les clés.

C’est la situation dans mon cas. Il y a un dossier (un immeuble) avec plusieurs fichiers (les appartements) dedans. Le dossier est accessible pour tout le monde. Par contre, je veux bloquer « l’entre » des mes voisins en mettant les code dans chaque dossier.

Il y a deux possibilités pour ouvrir chaque fichier :

1. Soit par chemin banale – Excel => Dossier => fichier => ouvrir le fichier

2. Soit par macro qui se trouve dans un autre fichier (homme de ménage)

Ma question était comment je peux mettre un code pour bloquer un fichier (éviter la possibilité N°1) en espérant que si je mets le même code dans la macro existante, ça va promettre le fonctionnement correct de la possibilité N°2.

Et maintenant tes recommandations :

Il me semble que je les mal comprends. Pourras-tu préciser en peu plus quoi exactement dois-je faire si le nom du fichier qu'il faut le protéger est AAA?

Merci,

Baton

P.S. J’espère que cette explication longue me permettra être compris correctement par les membres du forum.

Regarde si cela fonctionne, la feuille 2 est cachée,

elle contient les noms des fichiers ainsi que leurs mots de passe respectifs.

Tu peux alors utiliser

Workbooks.Open "C:\chemin\" & Fichier(I), , , , Fichier(I).Offset(, 1)

Mytå

Re le forum

En utilisant une identification par mot de passe . . .

Sub TestPW()
Dim Message$, Titre$, Def$, PassW$
PassW = "papaye"
Message = "Entrez un mot de passe :"
Titre = "Accès réservé"
Def = "*****"
If InputBox(Message, Titre, Def) <> PassW Then Exit Sub
MsgBox "Identification réussie"
'Poursuite de la macro
End Sub

Mytå

Bonsoir,

Merci beaucoup pour le code proposé.

Je le ne pourrai pas tester avant le mardi prochain.

Bon week-end

Baton

Rechercher des sujets similaires à "macro fichier verrouille"