カレントフォルダーの取得と変更・カレントドライブの変更|Excel VBA

カレントフォルダーの取得はCurDir関数を、変更はChDirステートメントを、カレントドライブの変更はChDriveステートメントを使用します。ここではExcel VBAでの使用例を掲載します。

関連するTipsで「APIを使ったファイル・フォルダの存在確認」を掲載しています。




Homeに戻る > Excel ファイル操作のTipsへ


カレントフォルダーを取得する

CurDir関数でカレントフォルダーを取得するVBAです。
CurDir関数でカレントフォルダーを取得するVBA

・CurDir関数で取得し、変数に入れます。
・B2セルに表示します。

Sub MyGetCur()
    Dim scd As String
    
    scd = CurDir
    Range("B2") = scd
End Sub

実行結果のシートです。
現在のカレントフォルダーは「C:¥Windows」になっています。
現在のカレントフォルダーが表示

カレントドライブを変更する

ChDriveステートメントでカレントドライブを変更するVBAを追加しました。
ChDriveステートメントでカレントドライブを変更するVBA

・ChDriveの引数Driveにドライブ名を指定します。ドライブ名に空文字を指定した場合は変更できません。存在しないドライブを指定するとエラーになります。

Sub MyGetCur()
    Dim scd As String
    
    scd = CurDir
    Range("B2") = scd
    
    ChDrive Drive:="D"
    scd = CurDir
    Range("B3") = scd
End Sub

実行結果のシートです。
元のカレントドライブ「C」から、「D」に変わっています。
元のカレントドライブから変わった

カレントフォルダーを変更する

ChDirステートメントでカレントフォルダーを変更するVBAを追加しました。
ChDirステートメントでカレントフォルダーを変更するVBAを追加

・ChDirの引数Pathに変更するフォルダ名を指定します。フォルダ名に空文字を指定した場合や存在しないドライブを指定するとエラーになります。

Sub MyGetCur()
    Dim scd As String
    
    scd = CurDir
    Range("B2") = scd
    
    ChDrive Drive:="D"
    scd = CurDir
    Range("B3") = scd

    ChDir Path:="D:\Test"
    scd = CurDir
    Range("B4") = scd
End Sub

実行結果のシートです。
元のカレントフォルダー「D:¥」から、「D:¥Test」に変わっています。
元のカレントフォルダーが変わった

Homeに戻る > Excel ファイル操作のTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved