教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA ブック操作】アクティブなブックのパスを取得(Path)するにはどうすればいいの?教えて!

f:id:m_kbou:20200418140748p:plain

アクティブブックのパスを取得するにはPathプロパティを使用します。Pathプロパティはアクティブブックのフォルダパスを返します。このPathプロパティの使い方について紹介します。

 

 

構文

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

ActiveWorkbook.Path

[説明]:

アクティブなブックのパスを取得するには「ActiveWorkbook.Path」と記述します。内容を纏めると、「現在アクティブになっているブックのパスを教えて下さい。」との意味になります。

 

使い方

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

[プログラミング例]:

Sub サンプル()
  MsgBox ActiveWorkbook.Path
End Sub

内容は、「現在アクティブになっているブックのパスをMsgBoxで表示して下さい。」との意味になります。

f:id:m_kbou:20210402073416p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、演習.xlsmファイルを作成し、C:\テストを登録しておきます。

f:id:m_kbou:20210402073431p:plain

①事前準備で登録した演習.xlsmファイルを開きます。ファイルには以下の様に<実行>ボタンが設置されており、<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。) 

f:id:m_kbou:20210402073446p:plain

②結果は以下の様になります。演習.xlsmファイルが登録されているパス(アクティブなブックのパス)である「C:\テスト」がMsgBoxで表示されます。

f:id:m_kbou:20210402073501p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

アクティブなブックのパスを取得する方法についての説明は以上です。

 

おわりに

今回はアクティブなブックのパスを取得する方法について説明しました。類似した内容にアクティブブックの名称を取得するもあります。一緒に覚えておくとプログラミングの幅が広がります。