Rompre les liaisons

Je voudrais rompre définitivement les liens d'un classeur.

7 solutions !!!

  • Si tu es sûr que ton fichier ne comporte aucune formule ou plage de cellules liées à un autre classeur, tu peux essayer de rediriger la liaison sur ton classeur lui-même avec Edition / Liaisons / Modifier la source.
  • Si ca ne marche pas, depuis la même fenêtre on peut aussi identifier vers quel fichier la laison se fait (Exemple C:\mes documents\...Toto.xls) Tu notes ces infos et tu fais une recherche (par Edition / Rechercher) avec une partie de ces infos (Exemple "C:\mes doc") en sélectionnant chercher dans "Formule" (cellule entière non-cochée bien sûr) Tu devrais trouver si il y a des formules liées que tu modifieras en conséquence. (Astuce : si tu as plusieurs feuilles tu les selectionnes toutes avant de lancer la recherche)
  • Si ca ne marche toujours pas, il faut vérifier manuellement TOUS les objets (Boutons, Graphiques, Images, etc et voir si ils ne sont pas liés à une macro d'un autre classeur. (Sélectionne l'objet, clic droit, assigner macro)
  • Si il n'y a toujours aucun résultat, ça peut venir d'un nom de cellule ou d'un plage. Tu peux vérifier ca par Inserer / Nom et tu regardes si il y des noms. Si oui, vérifie nom par nom pour voir si tu n'as pas une liaison avec cet autre classeur ou vers "#REF". Dans ce cas supprime le nom en question. -
  • Microsoft propose un fichier XLA pour supprimer les laisons dans Excel à l'adressse suivante : http://support.microsoft com/default.aspx?scid=kb;EN-US;q188449
  • Mieux encore : La macro FindLink de Bill Manville: http://www.bmsltd.ie/MVP/MVPPage.asp
  • Ou encore : tu peux remplacer avec cette macro tous tes liens de la table des liens excel (xlExcelLinks) par un lien bidon : C:\azerty.xla
Dim aLinks As Variant
aLinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(aLinks) Then
For i = 1 To UBound(aLinks)
ActiveWorkbook.ChangeLink aLinks(i), "C:\azerty.xla",  xlExcelLinks
Next i
End If 

Une fois que tous les liens ont le même nom, dans Excel, fait un remplacement par formules des > 'C:\azerty.xla'! < (apostropheS incluseS) avec rien (laisse la ligne 'remplacer par' vide). Attention, Excel à tendance à bugger pour la recherche si une feuille possède des cellules fusionnées...

Auteurs : , ,

Mots clefs associés à cette page : , ,