はじめに
アクティブブックの所在地(PATH)を調べる
イミディエイトウィンドウとは、VBA(Visual Basic for Application)を利用する時に使うVBE(EXCELなどに付属しているプログラムの開発環境のエディター/Visual Basic Editor)で使用することができる機能で、主にコードの実行結果を試すなど、デバッグする時に使うものです。
イミディエイトウィンドウにVBAコードを書いて、一気に処理する方法を説明しています!
今回は、「アクティブブックの所在地(PATH)調べる」方法です。
↓イミディエイトウィンドウの立ち上げ方などはこちら
やり方
前提:アクティブブック(操作しているブック)のPATHを調べる
普通にEXCELいじってたらあんまり意識することはないかもしれないですが、VBAでプログラミングなんかしてると、ブックの場所をPATH(パス)で指定しないといけない場面がよく出てきます。もちろん、フォルダみてどこにあるのか見たら良いんですが、手軽に調べられた方がいいですよね。一発コードでササッと調べる方法をご紹介します。
※参考:パスについて分からないかた→コトバンク(パス)
コード
ちゃんとしたコード
Debug.print ActiveWorkbook.Path
省略コード
?activeworkbook.path
【サンプル】
「Alt + F11」でVBEを開きます。イミディエイトウィンドウに上記のコードを入力して「Enter」で実行して下さい。
実行結果
「C:User¥[ユーザー名]¥****¥****¥ひらちん関連」と表示されました。ユーザー
※「ユーザー名」や「****」フォルダ名はご自身の環境によって違います
これでブックの「PATH」が分かりました。
ちなみに
↑のコードでは、ブックが置かれているフォルダ名までしか取得出来ませんが、ブックのファイル名も表示させたいときは、次のコードを使って下さい。
【ファイル名まで表示させたいとき】
ちゃんとしたコード
Debug.print ActiveWorkbook.FullName
省略コード
?activeworkbook.fullname
「Alt + F11」でVBEを開きます。イミディエイトウィンドウに上記のコードを入力して「Enter」で実行して下さい。
実行結果
「C:User¥[ユーザー名]¥****¥****¥ひらちん関連¥ひらちんのお部屋_イミディエイトウィンドウ.xlsx」とファイル名まで表示されました!
※なんで「.xlsm」じゃないん?とか「お部屋」みたいなことは気にしないで下さい。
また、ファイル名だけで良いんだよ。みたいなときは次のコードです。
【ファイル名まで表示させたいとき】
ちゃんとしたコード
Debug.print ActiveWorkbook.Name
省略コード
?activeworkbook.name
「Alt + F11」でVBEを開きます。イミディエイトウィンドウに上記のコードを入力して「Enter」で実行して下さい。
実行結果
「ひらちんのお部屋_イミディエイトウィンドウ.xlsx」とファイル名だけが表示されました。
【解説】
このコードは、「Workbookオブジェクト」のプロパティを取得しているコードです。「Pathプロパティ」「FullNameプロパティ」「Nameプロパティ」と取得するプロパティによって情報が異なります。
まとめ
ちょこっとコードで業務効率改善!
オススメの本
VBAはこの本きっかけだったな~
コメント