Liaisons entre classeurs protégés par des mots de passe

Fermé
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016 - 21 avril 2016 à 15:23
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016 - 28 avril 2016 à 21:25
Bonjour tous le monde !
SVP j'ai un problème que j'arrive pas à réglé :( , j'ai plusieurs utilisateurs qui mettent leurs données dans des fichiers excel ,ces derniers sont protégés par un mot de passe (chaqu'un a son propre fichier et mp), toutes les données de ces utilisateurs vont se transmettrent automatiquement vers le classeur du chef (classeur qui englobe le tous), mais le problème c que le chef doit tapper tous les mots de passe des utilisateurs, pour voir les nouvelles données mise à jours, c ce qu'il n'est pas logique, je veux que le chef accède à son fichier global sans saisir les mots de passe des utilisateurs, avec les liaisons qui seront assurées bien sur !
Comment faire celà via un code VBA svp ??
Merci bien :)
Cordialement
A voir également:

7 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié par Patrice33740 le 21/04/2016 à 17:27
Bonjour,

Si les classeurs sont protégés par mot de passe uniquement en écriture, il n'est pas nécessaire de saisir les mots de passe pour mettre à jour les liaisons !

PS: En VBA, il faudrait écrire en dur tous les mots de passe dans la macro, c'est à dire que les mots de passe ne servent plus à rien !

Cordialement
Patrice
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
21 avril 2016 à 18:27
Les classeurs (workbook) des utilisateurs sont protégés en écriture (certaines cellules seulement), quand le chef ouvre son classeur pour voir les mises à jours, les boites de dialogues des utilisateurs s'affichent en lui demandant de saisir les mots de passe de ces derniers :( ,je veux que les liaisons chez le classeur du chef s'effectuent sans demander au chef de saisit les mp via un code vba mais j'arrive pas, j'en ai vraiment besoin :(
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776 > lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
Modifié par Patrice33740 le 21/04/2016 à 21:16
Si des boites de dialogues s'affichent c'est que les fichiers sont protégés en lecture et en écriture !

Mais je ne parle pas de la protection des feuilles qui protège certaines cellules et ne demande aucun mot de passe lors qu'on les lie (du verbe lier) avec un autre classeur (ou lorsqu'on les lit (du verbe lire) et qu'on ne cherche pas à les modifier), ni de la protection de la structure du fichier, ces protections qui sont effectuées à partir de l'onglet Révision.
Je parle de la protection du fichier par mot de passe (seulement en écriture ou en lecture et en écriture) effectuée lors de l'enregistrement du fichier (Enregistrer sous/Outils/Options générales ...) .
C'est ce type de protection qui demande le mot de passe d'accès au fichier lors de la mise à jour des liaisons quand le fichier externe est protégé en lecture et en écriture, et qui ne le demande pas quand il est protégé uniquement en écriture !

Patrice
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
21 avril 2016 à 22:49
Donc c ces types de fichiers que j'ai lol, ils sont tous protégés par un mot de passe, et quand le chef ouvre son fichier global, les boites de dialogues des classeurs (utilisateurs) s'affichent ,en demandant au chef de les saisir, pour que les liaisons s'effectuent :( ,je veux que les liaisons s'effectuent sans demande de retapper les mots de passe des utilisateurs, si celà est possible via une macro svp :'( ,j'en ai vraiment besoin pour continuer mon travail :(
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776 > lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
22 avril 2016 à 00:01
Il serait plus judicieux de demander à chaque utilisateur de ne protéger leur fichier qu'en écriture mais pas en lecture, ce qui permettrait (au chef) de les consulter.

Sinon tous les utilisateurs devraient donner leur mot de passe pour les intégrer à la macro, dans ce cas, lorsque d'autres personnes le connaissent, le mot de passe ne garantit plus l'intégrité du document. En d'autres termes, il n'a plus aucune utilité.
Il suffit donc de les supprimer de tous les fichier, ce qui résout tous problèmes !
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
22 avril 2016 à 01:15
Si je les supprime, il n y aura plus de sécurité, tous les utilisateurs du site pourront voir les fichiers de leurs collègues lol
Enfaite c ce que je veux ,intégrer les mots de passe des utilisateurs dans la macro du fichier global :) ,de sorte que quand le chef ouvre son classeur ,il n' y aura la demande de saisie des mots de passe des utilisateurs ,ça se passe automatique, et les liaisons également c pour un projet de fin d'études enfaite, l'essentiel que ça marche devant les jury lol, les liaisons s'effectuent dans le fichier global sans affichage de boite de dialogue pour demander de saisir les mots de passe des utilisateurs, je veux que ça soit invisible cette partie avec les liaisons qui s'effectueront toujours bien sur !,svp aidez moi à réaliser cette macro :'(
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 22/04/2016 à 08:02
Bonjour

Généralement, dans une boite, le chef (ou plutôt l'administrateur informatique) distribue les mots de passe professionnels aux agents de son groupe puisque leur boulot appartient à la boite (loi INPI)...

et si un agent quitte la boite brusquement (décès p.e.) que fait on ?

D'ailleurs, créer son propre mot de passe peut être considéré comme une faute professionnelle grave

Si la boite possède un serveur, les mots de passe se trouvent souvent dans l'active directory (le mdp du serveur est stocké dans 2 coffres-forts: Voir les conditions des assurances sur les dommages informatiques)
 Michel
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
22 avril 2016 à 12:19
J'ai testé cette macro ,pour que les boites de dialogues (demande mots de passe des utilisateurs) se désactivent et les liaisons se font automatiquement lors de l'ouverture du fichier global par le chef, mais ça m'affiche toujours la boite en me demandant le mot de passe, voici le code :
Sub test()
Application.Workbooks.Open Filename:="D:\h.xlsx", _
ReadOnly:=True, Password:="essai", WriteResPassword:="essai"
Application.DisplayAlerts
End Sub

Que doit je faire svp, pour que les liaisons s'effectuent à l'ouverture du fichier gloabl sans demande de saisie les mots de passe des utilisateurs !
J'attend votre aide svp :(
Cordialement :)
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
22 avril 2016 à 12:34
le fichier "h.xlsx" ,c celui d'un utilisateur ^^
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
22 avril 2016 à 14:17
Il y a aussi des boites où les mots de passe sont strictement personnels, où personne n'a besoin de connaitre le mot de passe des autres, où ce ne sont pas les fichiers qui sont protégés mais c'est l'accès aux répertoires (plus rarement aux fichiers) qui est protégé et ces répertoires ne sont accessibles qu'a ceux qui ont a en connaitre, avec bien sur une gestion des droits de lecture ou d'écriture !

A partir du moment où un mot de passe est connu de plusieurs personnes, il ne garantit plus rien !
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
22 avril 2016 à 14:52
Oui mais dans ce cas comment je fais :( ,je veux que les fichiers excels soient protégés pour que les autres utilisateurs ne voient pas le contenu, et dans le fichier global qui contient les liaisons de ces derniers, je veux faire une macro qui ouvre le classeur global directement avec liaisons ,sans demande de saisie des mots de passe, je pense que c faisable ça, mais je sais pas comment procéder :'( ,j'en ai vraiment besoin :'( :'(
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303 > lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
Modifié par michel_m le 22/04/2016 à 16:35
concernant les mots de passe personnels, consultez les compagnies d'assurance vis à vis de l'informatique.
dans toutes les boites où j'ai sévi, le responsable réseau m' a donné un mot de passe à utiliser pour mes fichiers de travail interne. seuls y ont accès le responsable et le chef qui t'a donné le travail .cela se fait automatiquement: cela s'appelle "les privilèges" accordés par le responsable réseau (on trouve ce genre de procédure avec MS Access)

pour répondre à Lynda, tu fais une macro demandant, dans un de tes classeurs protégé (si tu n'es pas en réseau interne), une liste des identifiants des gens (Et/ou des noms de classeurs) qui t'envoient leur travail avec leur mot de passe et dans ta macro tu inscris dans une variable le nom du fichier fich="h_.xlx et tu fais une recherche du mode passe correspondant (liste à 2 colonnes) pour trouver le mot de passe
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 24/04/2016 à 14:47
Bonjour

Vu le mistral qui me gèle les os...

http://www.cjoint.com/c/FDymPnB7n8t
extraire (et non ouvrir) le zip avec 3 classeurs
chef =toi
agent= mot de passe connu
refus=mot de passe inconnu (pour test)

pour accéder à l'ouverture d'un classeur avec mot de passe, il faut le connaitre
donc, La liste des mots de passe est saisie une bonne fois pour toutes (elle peut évoluer) dans le classeur "chef" et comporte cette macro (module feuil1)

Option Explicit
'------
Sub acceder_classeurs_proteges()
Dim Fich As String, Derlig As Byte, cptr As Byte, Mdp As String
Fich = Application.GetOpenFilename
Derlig = Sheets(1).Columns("A").Find("*", , , , , xlPrevious).Row
For cptr = 1 To Derlig
Mdp = ThisWorkbook.Sheets(1).Cells(cptr, "A")
On Error Resume Next
Workbooks.Open Filename:=Fich, Password:=Mdp
If Err.Number = 0 Then: Exit For
Next
MsgBox "accès interdit!"
End Sub


lorsque tu demandes le classeur "agent" dont le mot de passe est répertorié dans la liste, le classeur s'ouvre (mot de passe="mdp3")
le classeur "Refus" n'est pas répertorié et tu as le message "accès interdit"

nota:
avec XL<=XL2003 on pouvait "violer" facilement les mots de passe, ce n'est plus possible maintenant pour le bidouilleur moyen








 Michel
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
24 avril 2016 à 17:08
Ok je vous remercie beaucoup beaucoup beaucoup pour votre aide, c très gentil :)
Mais je dois inclure ou cette macro svp?
Coredialement :)
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 24/04/2016 à 18:36
As tu essayé ma maquette ?

si OK

fais un copier du code ci dessus

va dans l'éditeur VBA (alt+F11)
insérer un module
clic sur module 1
fais un coller
---------------------------------------------
au cas où
Activer les macros:
rond office- -options Excel
1/standard
cocher " onglet développeur dans ruban "
2/gestion confidentialité- paramètres centre gestion-confidentialité
Activer toutes les macros (il n'y a peu de risques en 2014...)
installer la macro

1/faire un copier de la macro
Alt+F11
Insertion -module
Coller la macro

2/Dans la feuille concernée
ruban développeur
mode création
contrôle formulaire- bouton
Affecter à la macro
---------------------------
N'oublie pas de protéger ton classeur par un mot de passe !

 Michel
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
Modifié par lynda789456 le 24/04/2016 à 19:14
Je l'insère dans le classeur qui reçoit les liaisons c ça ? :)
Le mot de passe c : Mdp ?
Je crée deux fichiers excel c ça ?le premier est protégé par un mot de passe "Mdp"?et le deuxième c lui que j'insère la macro dessus ?
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
24 avril 2016 à 20:59
Enfaite j'ai créé deux classeurs pour l'essai, un s'appelle "a" et l'autre "b", j'ai fait une liaison de "a" vers "b", le classeur "a" est protégé avec un mot de passe et dans le classeur "b" j'ai inséré un module qui contient votre macro, j'ai testé l'ouverture du fichier "b", mais il me demande toujours le mot de passe de "a" :(
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
25 avril 2016 à 08:41
je t'ai remis un truc qui marche.
la macro est dans TON Classeur avec la liste des mots de passe dans le module feuil1

Comme il y a en feuille1 la liste des mots de passe, îl est primordial de protéger TON classeur par TON mot de passe (mot de passe compliqué au moins 10 caractères alphanumériques)
ainsi,tu écris TON mot de passe pout ouvrir TON Classeur

en appuyant sue le bouton,la macro t'invite a aller chercher le classeur d'un prof (agent) et quand tu demandes l'ouverture le mot de passe du prof doit être dans la liste de ton classeur

quand je citais l'administrateur, c'est l'administrateur informatique que j'évoquais
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
Modifié par lynda789456 le 25/04/2016 à 12:52
Bonjour et merci pour les explications :)
Je dois insérer la macro ou stp ?que dois je mettre dans le classeur1 et le classeur2 stp?et je dois protéger que le classeur source c ça ? :)
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
26 avril 2016 à 08:24
Bon,
le classeur chef ne sert qu'à ouvrir les classeurs
tu le renommes comme tu veux
alors tu écris les mots de passe dans la feuille 1 et BASTA !!!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
28 avril 2016 à 17:18
MERCI

de rien...
0
lynda789456 Messages postés 225 Date d'inscription mercredi 24 février 2016 Statut Membre Dernière intervention 22 novembre 2016
28 avril 2016 à 21:25
Oui merci beaucoup pour ton aide c très gentil monsieur Michel :)
Et je m'excuse de t'avoir dérangée :(
Bonne soirée :)
0