MkDir【メイクデレクトリ】ステートメント
新規フォルダーを作成するには、MkDir【メイクデレクトリ】ステートメントを使用します。
複数のファルダーをまとめて作成するときなどに便利に利用できます。
MkDir【メイクデレクトリ】ステートメントの書式と設定値の説明
MkDir Path
- Path【パス】(必須)
新しく作成するファルダーの名前を指定します。パスを含めて指定できます。
ファルダー名だけを指定した場合は、カレントファルダーに新規フォルダーが作成されます。ドライブ名を省略した場合はカレントドライブに作成されます。フォルダー名に[?][/][:][*][“][<][>][|]の文字は使用できません。すでに存在しているファルダー名を指定するとエラーになります。
このブックのパスにフォルダーを10個連番で作成するコードと解説
Sub フォルダー作成() Dim i As Integer On Error GoTo エラー処理 For i = 1 To 10 MkDir Path:=ThisWorkbook.Path & "¥データ" & i Next i MsgBox "フォルダーを" & i - 1 & "個作成しました。" Exit Sub エラー処理: MsgBox "同じファイル名が存在するかファイル名が不正です。。" End Sub
2行目【Dim i As Integer】
繰り返し処理で使用するフォルダーの個数を格納するカウンタ―変数「i」を整数型(Integer)で宣言しています。
繰り返し処理で使用するフォルダーの個数を格納するカウンタ―変数「i」を整数型(Integer)で宣言しています。
3行目【On Error GoTo エラー処理】
エラーが発生したときに処理を9行目の「エラー処理ラベル」まで、移動させるOn Error【オンエラー】ステートメントの宣言です。
4行目【For i = 1 To 10】
For Next【フォーネクスト】ステートメントで繰り返し処理の始まりです。カウンタ―変数に順次1~10の値を格納します。
5行目【MkDir Path:=ThisWorkbook.Path & “¥データ” & i】
MkDir【メイクデレクトリ】関数でこのブックのパスにデータという名前のフォルダーを作成します。10回繰り返すので同じ名前の場合、エラーになるため連結演算子のアンパサンドでi変数の値(連番)をフォルダー名に連結しています。
7行目【MsgBox “フォルダーを” & i – 1 & “個作成しました。”】
ループを抜けたところでMsgBox【メッセージボックス】関数でメッセージを表示します。メッセージ内のi変数の値はループを抜けたところで11になっているので1減算して新規作成したフォルダーの個数を表示しています。
以上で、MkDir 【メイクデレクトリ】ステートメントについての解説を終了します。ありがとうございました。