我有一份改进表格,我想将其用作创建未来文档的模板。我想知道是否可以使用 VBA 在工作表上插入一个命令按钮来创建副本,并将其保存在作者名下并添加编号,以便我们跟踪全年的改进情况。
例如有文档模板>单击按钮>打开用户表单输入作者姓名>然后单击创建保存在特定位置的新文档。
答案1
是的,这是完全有可能的。我建议您使用下面编写的 VBA 代码,这将帮助您以新名称保存模板工作簿。
Sub CreateNewBook()
Dim wbk As Workbook
Dim sht1,sht2 As Worksheet
Dim lng As Long, rng As Range
Set sht1 = Sheets("IndexName")
Set sht2 = Sheets("NameData")
lng = sht1.Cells(Rows.Count, "A").End(xlUp).Row
Set rng = sht1.Range("A2:A" & lng)
For Each c In rng
Sheets("Template").Copy
Set wbk = ActiveWorkbook
wbk.Sheets(1).Range("A100") = c.Value
sht2.Copy After:=wbk.Sheets(1)
wbk.SaveAs c.Value & ".xlsx"
wbk.Close False
Next
End Sub
注意:工作表“IndexName”在单元格 A2 中具有名称,每次单击按钮复制模板工作表时,代码都会将其用作“新文件名”。所以不要忘记用新名称更新单元格 A2。
工作表“NameData”用于跟踪单元格 A100 及以后的新文件的记录。
此外,此代码将把文件保存在默认位置。如果你想更改它,你可以。
希望这对你有帮助,我已经测试过这个 VBA 代码并发布了。