まさ工房

ExcelVBAとAcessDBを利用した業務支援ツールを作成する工房です

【Excelマクロ・VBA】指定したブックを開く(Open)にはどうすればいいの?教えて!

       f:id:m_kbou:20190716133154p:plain

パスで指定された場所にあるExcelブックを開く方法について説明します。パスを省略した場合は、カレントフォルダにあるブックを開きます。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

Workbooks.Open Filename: = ”[ブックが保存されているパス]

=======================================================================

[説明]:

指定したブックを開くには、Openメソッドを記述します。[ブックが保存されているパス]には、開くブックが保存されているパスを記述します。また、[ブックが保存されているパス]は「”」(ダブルクォーテーション)で囲みます。内容を纏めると、「[ブックが保存されているパス]で記述したブックを開きて下さい。」との意味になります。

[記述例]:

Workbooks.Open Filename:="C:\テスト\Book1.xlsx"
Workbooks.Open Filename:="Book1.xlsx"

 

使い方

使い方について、具体的に説明していきます。

保存先パスを指定したブックの開き方

保存先パスを指定したブックの開き方について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
    Workbooks.Open Filename:="C:\テスト\Book1.xlsx"
    MsgBox "C:\テスト\Book1.xlsxブックを開きました。"
End Sub

-------------------------------------------------

内容は、「C:\テスト\Book1.xlsxブックを開き最後にMsgBoxで”C:\テスト\Book1.xlsxブックを開きました”のメッセージを表示して下さい。」との意味になります。

[実行例]:

・ C:\テストに登録されているBook1.xlsxブック

f:id:m_kbou:20190716133213p:plain

・実行結果

f:id:m_kbou:20190716133229p:plain

保存先パスを指定したブックの開き方についての説明は以上です。

 

カレントフォルダ内のブックの開き方

カレントフォルダ内にあるブックの開き方について説明します。
(カレントフォルダはPCにより環境が異なります)

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
    Workbooks.Open Filename:="Book1.xlsx"
    MsgBox "カレントフォルダにあるBook1.xlsxブックを開きました。"
End Sub

-------------------------------------------------

内容は、「カレントフォルダ内にあるBook1.xlsxブックを開き最後にMsgBoxで”カレントフォルダにあるBook1.xlsxブックを開きました”のメッセージを表示して下さい。」との意味になります。

[実行例]:

※カレンドフォルダ内にあるブックを開く場合は、ブック名のみ指定すれば開く事ができます。

・ カレントフォルダに登録れているBook1.xlsxブック
(今回はカレントフォルダを『C:\まさ工房』とさせてもらいます)

f:id:m_kbou:20190716133244p:plain

・実行結果

f:id:m_kbou:20190716133256p:plain

カレントフォルダ内にあるブックの開き方についての説明は以上です。

 

おわりに

今回は、指定したブックの開き方について説明しました。Excelでは複数のブックを同時に開く事が可能です。しかし、既に開いている同じ名前のブックを再度開こうとした場合はエラーとなります。また、指定したブックが、指定パスやカレントパスにない場合にもエラーとなります。十分注意して下さい。