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

lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention   -  
lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention   -
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 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
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   Statut Membre Dernière intervention  
 
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 8561 Date d'inscription   Statut Membre Dernière intervention   1 780 > lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
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 8561 Date d'inscription   Statut Membre Dernière intervention   1 780 > lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
le fichier "h.xlsx" ,c celui d'un utilisateur ^^
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
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   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313 > lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
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   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
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   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
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   Statut Membre Dernière intervention  
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
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 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 313
 
MERCI

de rien...
0
lynda789456 Messages postés 225 Date d'inscription   Statut Membre Dernière intervention  
 
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