教えて!ExcelVBA!

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

【ExcelVBA 関数】ChDirステートメントでカレントフォルダを変更する方法を教えて!

f:id:m_kbou:20220111082218p:plain

 

 

構文

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

ChDir(”[パス]”)

[説明]:

指定したパスにカレントフォルダを変更します。
(※カレントフォルダとは現在使用しているフォルダの事を指します。)

[パス] 変更したいフォルダパスを記述します。
※「”」(ダブルクォーテーション)で囲みます。

[記述例]:

ChDir ("C:\テスト")

 

使い方

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

[プログラミング例]:

Sub サンプル()

  MsgBox CurDir("C:")

  ChDir ("C:\テスト")

  MsgBox CurDir("C:")

End Sub

内容は、「最初にCドライブのカレントフォルダをMsgBoxで表示し、次にカレントフォルダをC:\テストに変更します。最後にもう一度CドライブのカレントフォルダをMsgBoxで表示して下さい。」との意味になります。(※カレントフォルダを調べるCurDirステートメントの使い方はこちらを参考にして下さい。)

f:id:m_kbou:20220111082235p:plain

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

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20220111082247p:plain

②Cドライブの現在のカレントフォルダが表示されます。(※現在のCドライブカレントフォルダがWindowsとなるため、「C:\Windows」がMsgBoxで表示されます。)

f:id:m_kbou:20220111082257p:plain

③再度Cドライブの現在のカレントフォルダが表示されます。(※現在のCドライブカレントフォルダがテストとなるため、「C:\テスト」がMsgBoxで表示されます。)

f:id:m_kbou:20220111082308p:plain

[サンプル]:

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

drive.google.com

カレントフォルダを変更する方法についての説明は以上です。

 

おわりに

今回はカレントフォルダを変更する方法について説明しました。違うフォルダ間を跨ぐ処理がある場合は、是非ChDirステートメントを有効活用して下さい。