VB6・VBA関数メモ:ChDirステートメント

ChDirステートメントについてメモしておきます。

このステートメントはカレントフォルダを変更する際に使用します。
ただし、カレントドライブが異なるパスには変更できません。
(例えば、C:¥Dir¥からD:¥Dir¥には変更できない)

異なるドライブのフォルダを指定する場合は
ChDirステートメントの前にChDriveステートメントを実行する必要があります。

また、相対パスでパスを指定することもできます。
「.」が現在のフォルダ、「..」が上位フォルダの上位フォルダを指します。
(※Macintoshでは「:」「::」となるようです)

なお、カレントフォルダを取得する場合はCurDirステートメントを使用します。


概要

ChDir(Path As String)
機能 カレントフォルダを変更
引数 Path 変更するフォルダパス String型
戻り値 なし


使用例

説明 記述例 出力
カレントフォルダを変更
Debug.Print "" & CurDir()

Call ChDir("C:¥Dir2¥")

Debug.Print "→" & CurDir()
C:¥Dir1
→C:¥Dir2
カレントフォルダを変更(別ドライブ)
Debug.Print "" & CurDir()

Call ChDrive("D")
Call ChDir("D:¥Dir1¥")

Debug.Print "→" & CurDir()
C:¥Dir1
→D:¥Dir1
相対パスでカレントフォルダを変更
Debug.Print "" & CurDir()

Call ChDir(".¥SubDir¥")

Debug.Print "→" & CurDir()

Call ChDir("..")

Debug.Print "→" & CurDir()
C:¥Dir1
→C:¥Dir1¥SubDirC:¥Dir1


動作検証

説明 記述例 出力
別ドライブへカレントフォルダを指定する場合は、ChDriveステートメントを指定しないと変更されない
Debug.Print "" & CurDir()

Call ChDir("D:¥Dir1¥")

Debug.Print "→" & CurDir()
C:¥Dir1
→C:¥Dir1
存在しないパスを指定するとエラー
On Error GoTo ERR_HANDLER

    Debug.Print "" & CurDir()
    
    Call ChDir("D:¥NoDir¥")
    
    Debug.Print "→" & CurDir()

ERR_HANDLER:
    If Err > 0 Then Debug.Print Error
C:¥Dir1
パスが見つかりません。


コメント
コメントする








    
この記事のトラックバックURL
トラックバック