【VBA】カレントディレクトリを変更する方法|ChDirステートメント解説

目次

使用環境

  • OS:Windows 10 Pro(バージョン:20H2)
  • ソフト:Microsoft Excel VBA

経緯

VBAを使ってフォルダを作成するプログラムを書いていた際に、
作成されるフォルダが意図しない場所にできてしまうという問題が発生しました。

この原因が「カレントディレクトリ(現在の作業フォルダ)」にあると分かり、
今回はカレントディレクトリの変更方法について学びました。

解決方法:「ChDirステートメント」を使う

カレントディレクトリを変更するには、VBAの**ChDirステートメント**を使用します。

コード例

Sub カレントディレクトリの変更()

    ChDir "変更したいパス"

End Sub

コード解説

  • ChDirの後に、変更したいパス(例:”C:\Users\morinokabu\デスクトップ”)を指定します。
  • これにより、作業対象となるディレクトリを任意の場所に変更できます。

これを事前に設定しておくことで、後続のファイル作成やフォルダ作成処理が期待通りの場所で行えるようになります。

失敗談

私自身、Pythonでコマンドプロンプト上から

cd "変更したいパス"

と操作していた経験があったため、VBAでも似たようにコマンドプロンプト経由でカレントディレクトリを変更できないかと模索しました。

しかし、VBAにおいては直接VBAコード内でChDirを使う方法が基本であり、コマンドプロンプトからの操作ではうまくいきませんでした。

環境や言語によってアプローチが異なることを改めて実感しました。

まとめ

VBAでカレントディレクトリを変更したい場合は、**ChDir "パス名"**を使うのが正しい方法です。

事前に作業ディレクトリを設定することで、ファイルやフォルダの操作ミスを防ぎ、よりスムーズにプログラムを進めることができます。

引き続き、細かな動きにも気を配りながら、VBAのスキルを磨いていきたいと思います。

ここまでお読みいただき、誠にありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次