Я придумал маленький саб, чтобы сделать это.Он перемещает все листы в отдельные рабочие книги и распечатывает зависимости.Преимущество перед использованием showPrecedents
заключается в том, что он захватывает все ссылки, включая имена, встроенные формы / диаграммы и т. Д.
Предупреждение: перемещение рабочих таблиц невозможно, сохраните свою книгу перед запуском и закройте ее (без сохранения) и открыть заново после.
Sub printDependencies()
' Changes workbook structure - save before running this
Dim wbs As VBA.Collection, wb As Workbook, ws As Worksheets
Dim i As Integer, s As String, wc As Integer
Set ws = ThisWorkbook.Worksheets
Set wbs = New VBA.Collection
wbs.Add ThisWorkbook, ThisWorkbook.FullName
For i = ws.Count To 2 Step -1
ws(i).Move
wc = Application.Workbooks.Count
wbs.Add Application.Workbooks(wc), Application.Workbooks(wc).FullName
Next
Dim wb As Workbook
For Each wb In wbs
For Each s In wb.LinkSources(xlExcelLinks)
Debug.Print wb.Worksheets(1).Name & "<-" & wbs(s).Worksheets(1).Name
Next
Next
End Sub
Код не очень хорошо отшлифован или удобен для пользователя, но работает.