VBA(總noob)很新,努力奮鬥,我一直在論壇的各個部分拆分公式的一部分,以獲得我需要的東西,現在我卡住了。Excel:自動複製工作簿和基於列表
基本上我有一個工作簿,我需要說的工作簿重複很多次,它創建一個從這裏列表中保存的名字是我迄今爲止
Sub create()
Dim wb As Workbook, sh1 As Worksheet, lr As Long, rng As Range
Set sh1 = Sheets("List") 'Edit sheet name
Set sh2 = Sheets("Data") 'Edit sheet name
lr = sh1.Cells(Rows.Count, "A").End(xlUp).Row
Set rng = sh1.Range("A1:A" & lr)
For Each c In rng
Sheets("Template").Copy 'Edit sheet name
Set wb = ActiveWorkbook
wb.Sheets(1).Range("A1") = c.Value
sh2.Copy After:=wb.Sheets(1)
wb.SaveAs c.Value & ".xlsx"
wb.Close False
Next
End Sub
所以名單顯然是我的名字的列表文件,它工作得很好,但是工作簿有更多的工作表,而不是「數據」和「模板」,所以如果我有其他名爲「Data2」和「Data3」的工作表,我怎樣才能將它們寫入到工作簿中創建的。
預先感謝你們美好的人。
亞歷
因此,總結一下,您希望您的代碼將工作表保存爲每張工作表的單獨工作簿? – Calum
@Calum現在還沒有,如果我將其他工作表添加到原始工作簿中,它不會將它們添加到工作簿中,此時它只會添加到我的「模板」和「數據」選項卡中,如果我要添加更多選項卡即「data2」寫入: 設置sh3 =表(「Data2」)'編輯表名稱 這不起作用,如果有意義的話。對不起,如果它看起來模糊。 – Rojas
如果這就是所有你想要的然後保持與'設置SH3 =表(「數據2」)'然後'sh2.Copy後:= wb.Sheets(1)'下面添加'sh3.Copy後:= wb.Sheets(1 )',併爲每張紙做同樣的事情。 – Calum