カレントフォルダーを変更したい(現在ブックのあるフォルダを変更したい)

Excel VBA Tips集-5

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

今現在、ブックが格納されているフォルダを変更するにはChDir関数を利用します。またカレントフォルダを取得するにはCurDir関数」を用います

※例:MsgBox CurDirと書くと、カレントフォルダのパスが画面に表示されます。

カレントフォルダを変更するChDir関数の使い方は下記の通りです。

下記は、これらの関数を利用して、新たなカレントフォルダに同じファイル名でブックを保存するサンプルプログラムです。具体的には、例えばデスクトップにあるブック(ブック名.xlsm)を、「C:\works」に保存しています。

尚、Windows環境をご利用の場合、バックスラッシュ(\)記号を¥記号に読み替えていただければと存じます

サンプルプログラム

[スポンサードリンク]



SaveAsメソッドにファイル名(ブック名)[例:SaveAs “Sample.xlsm“]だけを指定すると、そのブックはカレントフォルダに保存されます。同様にOpenメソッドにファイル名だけを指定すると、カレントフォルダ内から指定されたブック名を探して、そのブックを開きます。

アクティブなワークブックのファイル名(例:Sample.xlsm)を取得するには、ActiveWorkbook.Nameとします。

Application.DisplayAlerts = Falseと書くことで、警告ダイアログボックスを非表示にできます。Application.DisplayAlerts = Falseを使う際は、必ずApplication.DisplayAlerts = Trueとセットで運用しますApplication.DisplayAlerts = Trueは警告ダイアログボックスの非表示を解除する命令です。警告ダイアログボックスを非表示を解除しておかないと、ずっとダイアログボックスが非表示のままになってしまうので、明示的に解除する必要があります。

尚、例えば「Cドライブ(例:C:\works)からEドライブ(例:E:\books)にカレントフォルダを変更する」場合のように、異なるドライブ間でカレントフォルダを変えるには「ChDrive Drive:=”E:\books”」等と書きます。ChDir関数異なるドライブ間でカレントフォルダを変更することができない点に留意して下さい。

関連項目

[スポンサードリンク]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA