je rencontre un problème dans mon traitement de fichiers Excel.
Je sais que j'ai des liens externes résiduels dans un fichier que je manipule. Aussi j'aurais souhaité pouvoir les virer avec la méthode proposée dans la
http://excel.developpez.com/faq/?page=Liaisons
Mon problème est que lors de l'exécution de la ligne ChangeLink, j'ai une erreur 1004 'invalid reference' (la fameuse qui pointe sur tout et rien à la fois)...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Dim Nom As String, objWorkbook As Workbook, TabLiaison As Variant, cmpt As Long Dim objWorksheet As Worksheet, objRange As Range Set objWorkbook = Application.Workbooks.Open(Application.GetOpenFilename, UpdateLinks:=0) TabLiaison = objWorkbook.LinkSources(xlExcelLinks) If IsEmpty(TabLiaison) Then Exit Sub For cmpt = LBound(TabLiaison) To UBound(TabLiaison) objWorkbook.ChangeLink TabLiaison(cmpt), objWorkbook.FullName, xlLinkTypeExcelLinks Next cmpt For Each objWorksheet In objWorkbook.Worksheets Do Set objRange = objWorksheet.CircularReference If Not objRange Is Nothing Then objRange.Value = objRange.Value Loop While Not objRange Is Nothing Next objWorksheet
En mettant un avertissement à faux j'ai toujours l'erreur, et en passant outre avec un On Error Resume Next, le lien n'est pas mis à jour...
Quelqu'un aurait-il déjà rencontré ce problème et si oui comment l'a-t-il contourné/résolu ?
Partager