1 つの Excel シートから複数のスプレッドシートを作成する簡単な方法はありますか?
たとえば、次の形式の Excel ファイルがあるとします。
バッチ ファイルを使用して、リスト内の番号ごとに個別のファイルを作成できますか? 各ファイルには、その番号のすべての行が含まれ、「Number_123_rows.xls」のように、番号の周りにテキストを含む形式を使用して名前が付けられます。
1 つの Excel シートから複数のスプレッドシートを作成する簡単な方法はありますか?
たとえば、次の形式の Excel ファイルがあるとします。
バッチ ファイルを使用して、リスト内の番号ごとに個別のファイルを作成できますか? 各ファイルには、その番号のすべての行が含まれ、「Number_123_rows.xls」のように、番号の周りにテキストを含む形式を使用して名前が付けられます。
(混乱を避けるための新しい回答-明らかに、夜遅くまで働くことは避けるべきです)
これは、最初の「file.csv」のみがあり、新しいファイル名に使用する列が2列であり、「a、b、c、d、、e、...」を「b」に並べ替えたいと仮定しています,a,d,c,e,..."
必要なファイル (例: "123.csv") が既に存在するかどうかを確認し、存在しない場合は、目的のヘッダーを使用してファイルを作成します (最初にファイルを作成する代わりに、後でヘッダーを追加します)。
@echo off
set "header=Title,Number,Whatever,Something,Anotherthing"
for /F "tokens=1-4* delims=," %%a in (file.csv) do (
if not exist "%%b.csv" (
rem when the file does not exist, create a new one with the header:
echo %header% >"%%b.csv"
)
rem append next line:
echo %%b,%%a,%%d,%%c,%%e >>%%i.csv
)
(「Number.csv」は削除しても構いません)