他のブックを外部参照しているセルの値が異常だったり誤っていたりした場合、元ネタのブックを開いて確認・修正する必要があります。こうしたとき、数式からファイル名を確認するのも面倒ですし、紛らわしい名前の多くファイルがあると目視作業はミスの元になります。
このマクロでは、参照先の確認やファイル探しの手間を省きます。外部ファイルを参照しているセルを選択して実行すると、参照先のファイルをさっと開けます。
Sub 外部参照先ブックを開く()
Dim aryLinks As Variant
Dim strVal As String
Dim i As Long
'ブック中の全参照の配列。ない場合はEmpty
aryLinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(aryLinks) Then
'参照数式を取得
strVal = ActiveCell.Formula
'二重シングルクォーテーション(エスケープ文字)を置換
strVal = Replace(strVal, Chr(39) & Chr(39), Chr(39))
'ファイル名につく[]を除去
strVal = Replace(strVal, "\[", "\")
'LinkSourcesのリストと照合
For i = 1 To UBound(aryLinks)
If InStr(strVal, aryLinks(i)) > 0 Then
If Dir(aryLinks(i)) <> "" Then
Workbooks.Open aryLinks(i)
Else
MsgBox "参照先ブックが存在しません。" & vbCrLf & _
aryLinks(i), vbInformation, "セルの参照先ブックを開く"
End If
Exit For
End If
Next i
End If
End Sub