VBA 【MkDirステートメント】新しくフォルダを作成する



The following two tabs change content below.
アバター

taka

あることがキッカケでVBAを独学で勉強しました、今ではブログを通してVBAでできることを解説しつつ、VBAや他の言語の勉強、ブログ運営の勉強をしています(^^♪

どうも、taka(@takabou63)です(^^♪

さて、VBAで新しくフォルダ(ディレクトリ)を作成したい時ありますよね?

保存したいフォルダがあるのにそのフォルダがなくてエラー・・・何てことがありますよね(;^ω^)

そういうときに使うのが【MkDirステートメント】です!

なので今回は、新しくフォルダを作成する【MkDirステートメント】についてご紹介します!

MkDirステートメントとは?

上記でもお話ししましたが、MkDirは新しくフォルダを作成できるステートメントです。

Dir関数は関数なのにMkDirは関数じゃないんですよね(笑)VB.Netから関数になったようです。

MkDirステートメントの書式

MkDirステートメントの書式は以下の通りです。

MkDir 作成するフォルダのパス

フォルダパスにはドライブ名や親フォルダ名を指定します。省略するとカレントフォルダにフォルダが作成されます

MkDirを使用したサンプルコード「フォルダがなかった場合は作成」

試しに、よく使われるであろうフォルダが存在しなかったらフォルダを作成というプログラムを作成してみました。ちょっとコードが無駄に長くなってしまいました(笑)

簡単な解説はコード内に書いてありますので参考にしてください!

Sub Sample()
Dim res As Variant
Dim Path As String
Dim Filename As String

Path = InputBox("フォルダを調べるパスを入力してください", "パスを入力")
If Path = "" Then 'InputBox関数のキャンセルが押された場合の処理
MsgBox "キャンセルが押されました"
Exit Sub
End If

Filename = Dir(Path, vbDirectory) 'InputBox関数に入力されたパスが存在するかを確認

If Filename = "" Then 'フォルダが存在しなかった場合
  res = MsgBox("フォルダが存在しませんのでフォルダを作成してもよろしいですか?", vbYesNo)
   If res = vbYes Then
    MkDir Path '新しくフォルダを作成する
   End If
If res = vbNo Then 'メッセージボックスでキャンセルを押した場合
   MsgBox "キャンセルされました"
   Exit Sub
End If

Else
MsgBox "フォルダは存在します。" 'フォルダが存在した場合

End If

End Sub

 

フォロー・チャンネル登録お願いします

VBA以外についてのブログはこちら↓

https://yb-log.com/

■Twitterフォロー

■YouTubeチャンネル登録

ファイルやコードの利用、WEBサイトの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Sponsored Link

 

WordPressでブログを始めるなら

WordPress簡単インストール&安心の安定性

レンタルサーバー Xserver

コメントを残す

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