Application code VBA sur beaucoup de fichiers

Max60150

XLDnaute Junior
Bonjour le forum :)
Et merci d'avance à mes lecteurs !

Alors je risque d'écrire un petit peu pour bien me faire comprendre, histoire de pas juste vous lancer ma question avec un fichier d'exemple en PJ !
Je vous lance quand même le fichier en PJ, histoire que vous compreniez de quoi je parle dans la suite de mes explications :p

Alors, j'ai un fichier 1 (INDICE), avec une liste de document indicés. L'indice des docs est mis à jour à la main sur ce fichier quand les documents sont modifiés. Ce documents est commun.
J'ai un certain nombre d'autres fichiers, que je synthétise en un fichier 2 (LIAISONS) pour l'exemple, qui ont des références vers le fichier 1 pour récupérer les indices des documents.
Grâce à l'aide de contributeurs sur ce forum, j'ai bricolé quelque chose pour que ce fichier 2 ne soit pas mis à jour à l'ouverture du fichier. Il se met à jour grâce à une macro associée à un bouton.
A l'ouverture (dans thisworkbook Open()) je désactive le calcul auto et là MAJ des liaisons, et dans ma macro je balance un calculate pour que les liaisons soient faites.
Les cellules contenant des références sont renommées pour être reconnues par la macro.
Grâce à un petit bout de code dans thisworkbook BeforeClose(), la valeur des cellules à la dernière utilisation du fichier est sauvegardée. Ainsi quand je fais une maj, je peux comparer les nouvelles valeurs des indices, avec celles d'avant la MAJ, tout ça pour surligner en jaune les modifications.
Les cellules précédemment surlignées en jaunes sont "dé-surlignées".

Voila, je préfère faire un petit pavé direct histoire que vous compreniez le fonctionnement.

La raison de ma venue maintenant. (Je précise que tout ce projet est dans le cadre pro)
Maintenant que ce petit bricolage fonctionne correctement, je vais devoir l'appliquer à tout les fichiers qui référencent les indices du fichier 1. C'est à dire, beaucoup de fichiers....

J'ai donc cherché un moyen de me faciliter la tâche.
Dans tout les cas je vais devoir passer les fichiers en revue pour renommer les cellules et faire les liaisons (a moins que vous ayez une idée magique? :p)
Mais pour ce qui est du code, j'ai trouvé quelque chose concernant les macro complémentaires.
En gros si j'ai bien compris on peut enregistrer une macro pour l'utiliser dans d'autres fichiers.
Mais je n'ai pas réussi à faire fonctionner ça étant donné que j'ai du code dans thisworkbook, + la macro miseajour() dans un module..

Alors finalement la question:
Est-ce que vous avez un moyen d'intégrer mon bricolage à mes fichiers, qui serait plus optimisé que de copier coller mon code à la barbare dans chaque classeurs etc.
Ce serait d'autant plus pratique que je n'aurais pas à dire aux futurs utilisateurs des fichiers qu'il faut activer l'onglet développeur, aller chercher du code, le mettre dans thisworkbook etc, autant leur parler chinois.......

Donc voila, je ne sais pas si les macro complémentaires sont une bonne piste, il faut peut être adapter mon code pour que ça fonctionne, ou si vous avez une autre idée..

Je suis dispo pour les questions, merci d'avance :)
Ah oui, ne pas oublier de joindre les fichiers !!
Fichier 1: INDICE
Fichier 2: LIAISONS
 

Pièces jointes

  • LIAISONS.xlsm
    26.6 KB · Affichages: 34
  • INDICE.xlsm
    8.9 KB · Affichages: 32
  • INDICE.xlsm
    8.9 KB · Affichages: 38
  • INDICE.xlsm
    8.9 KB · Affichages: 37

Discussions similaires

Réponses
6
Affichages
387