Mise à jour des liens entre 2 classeurs

Bonjour le forum,

J'ai un problème que je n'arrive pas à résoudre malgré toutes mes tentatives et recherches pour cela je m'adresse à vous avec l'espoir de trouver la bonne solution comme d'habitude

En fait, j'ai 2 classeurs Excel qui contiennent exactement les mêmes données et les mêmes onglets :

  • Le 1er fichier est un fichier xlsx de travail partagé entre plusieurs utilisateurs qui vont renseigner des données (Base de données)
  • Le 2ème fichier est un fichier xlsm en lecture seule qui est alimenté à partir du 1er fichier en utilisant beaucoup de formules de recherchev et si et qui contient des macros ou les utilisateurs doivent les exécuter pour voir le résultat souhaité

Jusqu'au la tout fonctionne bien théoriquement, mais je viens de découvrir que la mise à jour des liens dans le 2ème fichier ne se fait pas en automatique (malgré que j'ai le message de mise à jour) !!!

Manuellement, lorsque je fais mettre à jour les liens et je sélectionne le fichier source, ça marche, donc j'ai essayé de faire la macro suivante :

Sub maj_fr()

ActiveWorkbook.UpdateLink Name:= _
        "\\O:\chemin du 1er fichier.xlsm" _
        , Type:=xlExcelLinks
End Sub

Le problème que cette macro me demande de sélectionner le fichier source à chaque fois, ce qui ne me convient pas puisqu'il y a beaucoup d'utilisateurs non avertis qui utilisent ces 2 fichiers...

comment puisse faire pour mettre à jour les liens via une macro simple ?

PS :Les 2 fichiers sont enregistrés dans un réseau partagé entre plusieurs fichiers

D'avance, merci pour votre aide

Bonsoir,

Essayer ce code

Sub maj_fr()

    ActiveWorkbook.ChangeLink Name:="\\O:\chemin du 1er fichier.xlsm", NewName:=ActiveWorkbook.Name, Type:=xlExcelLinks

End Sub

Bonjour thev et merci pour votre proposition,

je viens de la tester mais je remarque que tous les liens ont été modifié !!! Ils ne pointent plus vers le classeur source

Par exemple le lien de type : RECHERCHEV($A6;'[Fichier source.xlsx]Base'!$A:$BP;15;0) devient RECHERCHEV($A6;'Base'!$A:$BP;15;0)

du coup j'ai perdu toute liaison avec le fichier source

Désolé. Je me suis effectivement trompé dans ma réponse. Ce code permet de supprimer les liens avec un autre classeur.

Rechercher des sujets similaires à "mise jour liens entre classeurs"