教えて!ExcelVBA!

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

ExcelVBAでCurDir関数の使い方

構文

構文は以下の通りです。

CurDir([ドライブ])

解説

CurDir関数は、現在の作業ディレクトリ(フォルダ)のパスを返す関数です。ドライブはオプションの引数で、特定のドライブのカレントディレクトリを取得したい場合に指定します。指定しない場合は、現在のアクティブなドライブのカレントディレクトリを返します。ドライブは、省略可能な文字列です。特定のドライブ(例: "C:")のカレントディレクトリを取得するために使用します。

プログラミング例

具体的なプログラミング例を紹介します。

(例1)現在のカレントディレクトリを取得する

Sub カレントディレクトリを表示()
    Dim 現在のディレクトリ As String
    現在のディレクトリ = CurDir()
    MsgBox "現在のディレクトリは " & 現在のディレクトリ & " です。"
End Sub

上記のプログラムは、CurDir関数で現在の作業ディレクトリを取得し、それをMsgBoxで表示します。指定したドライブがないため、アクティブなドライブのカレントディレクトリが表示されます。

(例2)特定のドライブのカレントディレクトリを取得する

Sub ドライブCのカレントディレクトリを表示()
    Dim ドライブCのディレクトリ As String
    ドライブCのディレクトリ = CurDir("C:")
    MsgBox "Cドライブのディレクトリは " & ドライブCのディレクトリ & " です。"
End Sub

上記のプログラムは、CurDir("C:")で、Cドライブのカレントディレクトリを取得しています。もし他のドライブのディレクトリを調べたい場合は、引数にそのドライブ名を入れます。

まとめ

CurDir関数は、現在の作業フォルダのパスを簡単に取得できる便利な関数です。ドライブを指定しない場合は、アクティブなドライブのカレントディレクトリが返されます。必要に応じて特定のドライブのカレントディレクトリを取得することも可能です。