Recherche classeurs Excel avec liaisons [Fermé]

Signaler
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
-
eriiic
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
-
Bonjour,

J'ai un dossier avec une foultitude de classeurs Excel (Office 365) et dans beaucoup de classeurs il existe des liaisons vers d'autres fichiers Excel ou des fichiers CSV.
Je voulais savoir s'il existerait un utilitaire spécial qui pouvait parcourir automatiquement un dossier et rechercher dans chaque classeur Excel les liaisons qui y sont intégrées.
Et au final restituer une liste avec pour chaque classeur ausculté, la liste des fichiers liées.

Merci de votre aide et de vos conseils.

Cordialement

Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bonjour,

un essai : https://www.cjoint.com/c/HJzo1cYT5RU
eric
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Merci eriiic ... super ton truc ...
2 questions:
- est-ce que cela pourrait parcourir aussi tous les sous-dossiers ?
- Si un fichier est protégé par un mot de passe en modification, est-ce que ce serait possible de l'ouvrir en automatique en lecture seule ?

Merci de ton aide.
eriiic
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Ta demande :
qui pouvait parcourir automatiquement un dossier
Si tu avais formulé correctement ta demande, ça y serait.
Là je vais manquer de temps. Recherche sur le net comment parcourir un dossier et ses sous-dossiers, les exemples abondent.
Sinon, tu attends, et tu me relances en milieu de semaine si pas de nouvelle.

Si un fichier est protégé par un mot de passe en modification
essaie en remplaçant :
Set wb2 = Workbooks.Open(chemin & Fichier, UpdateLinks:=0)

par :
Set wb2 = Workbooks.Open(chemin & Fichier, UpdateLinks:=0, ReadOnly:=True)

eric

PS : j'ai oublié de préciser...
Pour faire vite j'ai fixé le nombre de liens à 512 max. Modifier la constante si besoin de plus
jlchaps
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Merci eriiic , désolé de na pas avoir été très précis sur la demande.
Par contre, même si je suis informaticien, je n'ai pas été formé aux outils VBA. En effet, je suis plutôt d'une ancienne école, ayant fait mes études informatique en 1977 et sur carte perforées, sans voir ni écran, ni clavier et encore moins de souris ...
Donc, sans vouloir faire le fainéant, et sachant que ce n'est pas urgent à la minute, je vais attendre, si tu le veux bien, que tu te penches sur la question.
Merci encore et à bientôt
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
des news eriiic ?
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bonjour,

Oui, j'ai eu des difficultés suite à un changement de HD.
Après copie de l'arborescence j'ai récupéré mes fichiers, seulement je n'étais plus propriétaire des répertoires ce qui fait que mes tests ne me ramenaient rien...
Le temps de comprendre et d'essayer de remettre un peu d'ordre m'a occupé.
A tester donc : https://mon-partage.fr/f/rRt9tj7Y/
eric


Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Salut et merci … je vais pouvoir tester ça vendredi. Je te dirais.
Encore merci de ton temps.
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bonjour,

Comme ça, ça m'a laissé le temps de fignoler.
J'ai ajouté une boite de dialogue pour la saisie des paramètres, j'ai ajouté le choix de la profondeur d'exploration.

Une chose que j'ai oublié de te préciser (c'est écrit en commentaire dans le code mais bon...) :
Il faut activer la réference Microsoft Scripting RunTime
Dans VBE (l'éditeur VBA) menu 'Option / Références...', descendre la liste et la cocher.

Une dernière chose :
en faisant des tests plus large je me suis aperçu que des erreurs d'ouverture subsistaient malgré le traitement d'erreur
On Error Goto suite
.
Je suppose que c'est encore des résidus de la recopie de mes fichiers (perte de droits), mais si ça t'arrive pas d'autre choix que de cliquer sur Débogage, prendre la ligne en erreur dans la marge (celle en jaune, noter chemin et fichier si tu veux le contrôler manuellement) et faire glisser la ligne d'exécution après l'étiquette
suite:
(sur
Set wb2 = Nothing
)
Relancer la macro avec F5
Les fichiers en erreur (traités automatiquement ou manuellement) sont listés et marqués FICHIER EN ERREUR DE LECTURE
https://mon-partage.fr/f/oPXMUQSN/
eric
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Vraiment Eric, c'est un super boulot que tu fais là ... merci pour ton temps à y passer. Ça va super bien m'aider dans ce que je veux faire.
Je teste ça dans la journée et reviens te dire ce que ça donne chez moi.
A+
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Résultat :
- Sur un 1° gros dossier, tout s'est déroulé impeccablement sans aucune erreur, nickel
- Sur un 2° plus gros dossier, j'ai eu plusieurs erreurs qui sont passés avec ta méthode :
- fichier raccourci mais dont le nom se termine par XLSX ou XLS
- fichier reçus par des clients qui sont en mode protégé
- message sauvegardé d'Outlook mais avec nom XXXXXX.xlsx.msg

Voilà, somme toute ça marche très bien.
Un grand merci
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bonjour,

J'avais zappé qu'un fichier pouvait avoir .xl en plein milieu.
Je contrôle maintenant que ce ne soit que dans l'extension, ça fera qq cas à tort en moins.
J'ai modifié aussi la gestion du tableau en mémoire que j'avais fait un peu à l'arrache.
Sans doute que tu n'en as plus besoin, ça servira aux futurs lecteur :
https://mon-partage.fr/f/b2val3kd/
eric
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Je testerai à nouveau la nouvelle version lundi prochain. merci
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Salut ... nouvelle version testée. La modification marche.
Pour les quelques fichiers qui s'ouvrent en mode protégé, je les ai ouvert individuellement avant et enlever le mode de protection et ça passe.
Reste les fichiers qui sont réellement protégé par un mot de passe et que l'on ne peut même pas ouvrir en lecture seule. Il faut pour chacun d'entre eux ! et il y a des dossiers où il y en a beaucoup. Dommage.
Sinon, j'en ai encore besoin car j'aurai des mises à jour à faire et encore beaucoup de dossier à ausculter pour bâtir une arborescence des liaisons.
Encore merci
eriiic
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bonjour,

merci pour le retour.
Reste les fichiers qui sont réellement protégé par un mot de passe et que l'on ne peut même pas ouvrir en lecture seule.
Je ne pourrais sûrement rien y faire mais il ne te propose pas la saisie du mot de passe ?
eric
Messages postés
68
Date d'inscription
vendredi 16 septembre 2005
Statut
Membre
Dernière intervention
6 novembre 2019
1
Si, il propose de saisir le mot de passe mais cela concerne plein de fichier et je n'ai pas les mots de passe.
C'est pour établir une base de donnée des liens sur un serveur où plusieurs personnes ont leurs fichiers.
eriiic
Messages postés
23116
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
12 décembre 2019
5792
Bah, au moins tu peux leur envoyer la liste qu'ils te les fournissent ;-)