2011-08-15 28 views
4

我有一個鏈接到其他工作簿的鏈接到其他工作簿的工作簿。有沒有簡單的方法來收集當前打開的工作簿引用的所有工作簿?我可以想象編寫一個宏來查看所有在工作簿中存放公式的單元格,檢查公式中括號內的任何內容並將它們複製到列表中,但這看起來很笨重,並且希望不必要。 Excel是否有幫助跟蹤文件鏈接到的工作簿的工具?我知道「跟蹤先例」在工作簿中很有用,並且「ctrl + [」鍵組合對於跟蹤鏈接的數據很有用,但我無法爲工作簿中的所有單元手動執行此操作。 感謝您的幫助。在Excel 2010中收集鏈接工作簿的列表/文件夾

回答

2

此代碼將爲您提供與單擊編輯>鏈接相同的列表。

Sub PrintLinkedBooks() 

Dim LinkedBooks As Variant 
Dim i As Long 

LinkedBooks = ThisWorkbook.LinkSources() 
For i = LBound(LinkedBooks) To UBound(LinkedBooks) 
    Debug.Print LinkedBooks(i) 
Next i 

End Sub 

還有工具可以找到鏈接。我從來沒有用過,但Bill Manville's是一個建議。

+0

'.LinkSources'確實是關鍵。如果你想要鏈接到書籍鏈接的書籍,那麼你必須編寫一個遞歸函數。請注意,'.LinkSources'告訴你這本書鏈接到哪本書,但不是相反的,即它不會告訴你哪本書鏈接到這本書。 –

+0

完美!謝謝!我從未在即時窗口找到太多用處,但這非常有幫助。現在我知道哪些書鏈接了,我會找到那些不應該的,並運行查找和替換。 – Charlie

+0

我的第一個想法是隻找到格式化爲鏈接的東西,但我想像的東西就像.LinkSources會存在。 – Charlie

相關問題