【发布时间】:2014-02-07 20:19:01
【问题描述】:
我正在尝试修改我的电子表格,以便当您单击“插入工作表”按钮时,它会将单元格 B38-K38:B52-K52 中的文本、表单、VBA、宏等添加到新工作表和允许用户单击我拥有的“单击此处”按钮并根据需要输入数据。我尝试使用 VBA 脚本执行此操作,但出现错误,因为每次添加工作表时,数字都会增加。增量会解决这个问题还是有其他解决方案?
编辑,解决方法如下:
Sub new_sheet()
'
' new_sheet Macro
' Copies the range of B36:L52 (Problems Identified) to a new sheet
' Then resizes columns
' Keyboard Shortcut: Ctrl+q
Worksheets.Add after:=Worksheets(Worksheets.Count), Count:=1
Worksheets("Sheet1").Range("B36:L52").Copy Destination:=ActiveSheet.Range("A1")
Cells.Select
Selection.Columns.AutoFit
End Sub
【问题讨论】:
-
需要更多信息。 “单击此处”按钮现在运行什么代码?你在复制这个按钮吗?代码是否附加到您正在复制的按钮上? “将增加解决此问题”是什么意思。没有足够的信息来回答这个问题 - 请尝试提供足够的信息以便我们为您提供帮助。
-
抱歉,有点含糊。它有一个“单击此处”按钮,单击该按钮后,您可以输入检查区域,该区域将使用该信息填充单元格 (B39)。代码附加到按钮上,我正在尝试将按钮(及其代码)和单元格复制到新的工作表中。我的意思是增加工作表名称“Sheet++”可能不会出现调试错误,因为我尝试制作的宏正在寻找“sheet2”、“sheet3”等。
-
我想现在我可以忽略这个按钮,因为它一开始是没有必要的。即使像将表单和一些简单的公式复制到带有宏的新工作表这样简单的事情,它也无法正常工作。它只会粘贴我创建的图像。
-
如果您的代码在工作表模块中(而不是在常规模块中),那么它应该与工作表一起复制。如果您的代码在工作表模块中,您可以使用
Me而不是(例如)Sheet1来引用托管运行代码的工作表。