CurDir関数を使用したプログラミング例を紹介します。
例題
カレントフォルダ選択欄(A2セル)はプルダウンにてフォルダが選択ができる様に設定されています。この選択欄から任意のフォルダを選択し、<実行>ボタンをクリックします。ボタンをクリックすると選択したフォルダにカレントフォルダを変更し、変更したカレントフォルダをMsgBoxで表示します。(※プルダウンの中には「このファイルの保管場所」の項目が含まれています。この項目を選択した場合、現在Excelを開いているフォルダをカレントフォルダとして表示します。)
[実行前]:
カレントフォルダ選択欄(A2セル)はプルダウンにてフォルダが選択できます。任意のフォルダを選択して<実行>ボタンをクリックします。
[実行後]:
①「C:¥temp」を選択し<実行>ボタンをクリックした場合、カレントフォルダがC:¥tempに変更され「C:¥temp」が表示されます。
②「このファイルの保管場所」を選択し<実行>ボタンをクリックした場合、現在Excelを開いているフォルダをカレントフォルダに変更します。今回の例ではC:¥物置に保管されているExcelファイルを開いたため「C:¥物置」が表示されました。
プログラミング
プログラミングは以下の通りとなります。
[記述例]:
Sub サンプル()
'↓処理①
If (Range("A2") = "このファイルの保管場所") Then
ChDir ThisWorkbook.Path
Else
ChDir Range("A2")
End If
'↓処理②
MsgBox CurDir
End Sub
処理①:カレントフォルダの変更
ChDirステートメントを使用してカレントフォルダ選択欄(A2セル)で選択したフォルダをカレントフォルダに変更します。(※カレントフォルダ選択欄で「このファイルの保管場所」を選択した場合は、現在開いているExcelファイルのフォルダをカレントフォルダに変更します。)
処理②:現在のカレントフォルダの表示
CurDirステートメントを使用して処理①で変更したカレントフォルダをMsgBoxで表示します。
との内容になります。
ダウンロード
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。