PR
ファイルの操作

【Excel VBA】指定したセルのリンク先のExcelファイルを開く

指定したセルに記入されているリンク先のExcelファイルを開く場合のコードです。

コード内に直接Excelファイルのリンクを記入していると、修正が発生した場合にマクロの知識があまり無い人にはハードルが高くなりがちです。

そうならないように、Excelファイルにマクロ処理中に登場するExcelファイルを記載しておくことで、ファイルの名前を変更してはいけない、移動させてはいけない、等の注意をその他のユーザーへ促せるようになります(エラーが起きた場合の編集のハードルも下がります)。

以下が、セルA1に記入されているリンク先のExcelファイルを開くコードです。
ファイルが開けないなどのエラー発生時は強制的にマクロ終了になるようエラー処理(On Error GoTo)も入れています。

Sub セルのリンク先のExcelファイルを開く()


' セル A1 にリンクされたファイルを開く例
Dim FilePath As String

'セルに入力されたリンクが間違っているか、ファイルが存在しない(ファイルが開けない)、場合はマクロ終了
On Error GoTo ERROR_1

'セルA1のリンクを変数へ代入する(A1セルの例・・・C:\Users\TARO\BOOK1.xlsx)
FilePath = Range("A1")

' ファイルを開く
Workbooks.Open Filename:=FilePath

Exit Sub


'エラー発生時の処理
ERROR_1:
MsgBox "セルに入力されたリンクが間違っているか、ファイルが存在しません(開けません)。"


End Sub

コメント