Excel VBAについて教えてください。
3つのExcelシートのうち2シートをコピーして、
残りの 1シートに記載された部の数だけファイルを作成(ファイル名は部名称)
コピーしたそれぞれのファイルの決められたセルには部名称を記載
<詳細>
Excelシートは、「一覧」 「1」 「部」 という3シートあり、「一覧」と「1」 という2シートをコピーして ファイル名は 「部」名称で保存。
部別に作成された 「1」 というシートの C12 セルには部署名を入力
「部」のシートには、下記にように記載されております。
部署 部署名
QA MQA
QB MQB
QC MQC
下記VBA記載の場合、「1」 というシートのみコピーされ、保存できましたが、「一覧」シートも一緒に コピー保存をしたい為、その方法をご教示ください。
Sub シート作成()
Dim a
For a = 2 To Sheets("部").Range("B30").End(xlUp).Row
Sheets("1").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = Sheets("部").Range("B" & a).Value
Sheets(Sheets.Count).Range("C12").Value = Sheets("部").Range("C" & a)
Sheets(Sheets.Count).Copy
Application.DisplayAlerts = False
Dim myDate As Variant
myDate = DateSerial(Range("M7"), Range("O7"), 1)
ActiveWorkbook.SaveAs "C:\Users\satoko.h" & ActiveSheet.Name & "" & Format(myDate, "yymm") & " " & "AAAA" & ".xlsx"
ActiveWorkbook.Close
Sheets(Sheets.Count).Delete
Sheets("1").Select
Next
End Sub
ーーーーーーーーーーー
ARRAY で SHEETS(ARRAY("一覧","1")).COPY
として作成しようとしましたが、思ったような結果になりませんでした。
どうぞよろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/05 10:39