我有一个任务,要制作一个具有以下要求的子程序:
□ 创建新工作簿
□ 复制 Excel 文件中“2. 格式”选项卡中包含的表格
□ 将表格粘贴到新工作簿中
□ 将新工作簿中的工作表选项卡重命名为“表格数据”
□ 使用以下名称将新工作簿保存到桌面上创建的文件夹中:“_ Excel 评估 VBA”
□ 将工作簿保存为启用宏的工作表
□ 使文件夹路径通用,以便其他人也可以创建此文件夹
□ 在文件标题中,使用日期格式功能添加今天的日期,格式如下:dd-mmm-yyyy
我目前拥有的代码是这样的:
Sub Req1()
Set NewBook = Workbooks.Add
With NewBook
.Title = "Table Data"
Worksheets("2. Formatting").Activate
Range("B3:R13").Copy Destination:=Worksheets(“Table Data”).Range(“A1”)
ActiveWorkbook.SaveAs Filename:="C:\Users\Public\Desktop\Starks_Craig Excel Assessment VBA\Starks_Craig Excel Assessment VBA.xlsm" & Format(Date, "ddmmyyyy")
End Sub
“Range("B3:R13").Copy Destination:=Worksheets(“Table Data”).Range(“A1”)”行显示为红色,表示编译错误,我不知道原因。此外,我不确定我的代码是否全面满足此要求。我寻求帮助,因为我对 VBA 还很陌生。
此外,我应该:
- 从“开发人员”选项卡创建一个按钮,以便您的经理可以轻松运行您的宏
- 将按钮分配给你创建的第一个子程序
- 对第二个子程序重复 1 和 2
我不确定该怎么做,因为当我尝试选择我制作的宏时,它给出了一个错误。任何帮助都将不胜感激。
答案1
首先快速回答一下:你犯了一个常见错误。看来你在文字处理器(如 Microsoft Word)中输入了一些代码,并将其复制到 VBA 编辑器中:
Range("B3:R13").Copy Destination:=Worksheets(“Table Data”).Range(“A1”)
↑ ↑ ⇑ ⇑ ⇑ ⇑
good bad bad
前两个引号字符是正确的代码引号。后四个引号是文字处理引号,会导致代码错误。