Excelの名前リストから複数のフォルダーを作るときは、1行につき1つのmdコマンドを用意します。
CSVは引用符を重ねて保存する場合があるため、拡張子をBATへ変えるだけで実行せず、完成したコマンド列をテキストとして貼り付けます。
日本語・空白を含むフォルダーを作るバッチ
ZIPは空の練習フォルダーへ展開し、下の手順で指定するサブフォルダーを開いて使います。
- 空の練習フォルダーでcreate.batを開く。ZIPの場合はcreateフォルダーを使う
- 下のコードを使う場合は、UTF-8(BOMなし)でcreate.batとして保存する
- コマンドプロンプトでcreate.batを実行する
- 山田 太郎、資料 ! & [2026]、進捗 100%の3フォルダーを確認する
@echo off
setlocal DisableDelayedExpansion
chcp 65001 >nul
pushd "%~dp0" || exit /b 1
md "山田 太郎" || exit /b 1
md "資料 ! & [2026]" || exit /b 1
md "進捗 100%%" || exit /b 1
popd
pushdはBAT自身のフォルダーへ移動するため、別の場所から起動しても作成先が変わりません。
名前の空白や&は二重引用符で囲み、!は遅延展開を無効にして保持します。
BATに文字として%を書く場合は%%とし、パス区切りやWindowsで使えない文字、CONなどの予約名は入力しません。
Excelのリストからコマンド列を作る
- B1以降へ1行1つのフォルダー名を入力する
- C1へ下の数式を入力し、必要な行へコピーする
- C列の結果をコピーし、メモ帳へプレーンテキストとして貼り付ける
- コード例の3行のmdを、貼り付けたmdの行へ置き換える
- CSVとして保存せず、UTF-8(BOMなし)のBATとして保存して練習用の数件で試す
="md """&SUBSTITUTE(B1,"%","%%")&""""
B1が山田 太郎なら、C1の結果はmd "山田 太郎"です。
この例はフォルダー名だけを扱い、セルへフルパスや改行、コマンドを入力する用途には使いません。
作成できないときと戻し方
拡張子がcreate.bat.txtになっていないか、UTF-8の保存形式とchcp 65001の行を確認します。
同名のフォルダーがあるとmdはエラーになり、コード例はそこで停止するため、新しい空の練習フォルダーでやり直します。
途中まで作成された場合も既存フォルダーは削除されないため、作成先を確認して必要な名前だけ再実行します。
戻すときは練習で作った空のフォルダーだけをエクスプローラーで確認し、必要なデータを含むフォルダーは残します。
2026年10月2日にWindowsのCMDで3つの名前と再実行時の停止を検証しました。
Excelの数式入力・コピー操作のGUI確認は今回の検証に含みません。
仕様:Microsoft公式 md。
従来の操作画面
以下は旧版の画面で、リスト入力や元の操作例の参考として残しています。
現在の手順は上のコードと入力・出力例を使い、CSVの拡張子変更や元ファイルの直接リネームは行いません。






業務効率化に役立つその他のツールは、以下のリンクから確認できます。

Windowsバッチの記事は、ほかにもあります。




まとめ
完成したmdコマンドをBATへ貼り付け、作成先と文字コードを確認して実行します。
