- ベストアンサー
ExcelVBA シートコピーの処理
シート1、シート2、シート3、シート4があり シート1、シート2、シート3を『新しいブック』へコピーを行い保存をする。 保存の際にシート4のA列にファイル名がありシート3のA1へファイル名を入れ 保存の際にファイル名をシート4のファイル名似て保存を行う。 シート4のA列に入力のある行の回数だけ繰り返す。 また、保存の際にファイル名と同じフォルダを作成しそこへ保存を行う。 以上の処理を100件以上繰り返す必要がありうまくいかず悩んでおります。 ご教授いただけましたらよろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
sub macro1() dim myPath as string dim myFile as string dim h as range, target as range mypath = thisworkbook.path & "\" ’保存先を正しく準備する事 worksheets("Sheet4").select set target = range("A1:A" & range("A65536").end(xlup).row) on error resume next worksheets(array("Sheet1", "Sheet2", "Sheet3")).copy for each h in target myfile = h.value mkdir mypath & split(myfile, ".")(0) & "\" worksheets("Sheet3").range("A1") = h.value activeworkbook.saveas mypath & split(myfile, ".")(0) & "\" & myfile next activeworkbook.close false end sub #どこに保存先フォルダを一連作成するのか、状況説明が足りてません。 シート4のA列の「ファイル名」として具体的にどんな内容で記入してあるのかも、説明されていません。 てきとーに補って作成してあるので、必要に応じて適切にマクロを見直してください。
その他の回答 (1)
- K Kazz(@JazzCorp)
- ベストアンサー率31% (549/1751)
ワケワカランノハ、ハタクシタケアルカ? ジブン、ホント二ワカッテイルノコトアルカ??
お礼
質問文が拙く申し訳ありません。
お礼
早速のご回答ありがとうございます。 実行して確認してみます。 ありがとうございます。 ※保存先フォルダはC¥Tempを想定し ファイル名は地域名の予定でした。 説明が足らず申し訳ありません。