我正在尝试编写一个宏,它会将数据从一个电子表格复制到同一工作簿中的另一个电子表格,并使用Marco分配给一个活动控件按钮。此外,我将按钮在复制到另一个工作表后清除字段中的数据。但是,我正在努力调试此代码。有人可以提供帮助吗?
return
答案 0 :(得分:0)
基本上,您要做的是以下内容:
Private Sub CommandButton1_Click()
Worksheets("AssemblyTotals").Range("SomeTargetAddress").Value = Worksheets("Assembly Work Form").Range("SomeSourceAddress").Value 'Copy a value
Worksheets("Assembly Work Form").Range("SomeSourceAddress").ClearContents 'Clear the original value
End Sub
当然要更改" SomeTargetAddress"和#34; SomeSourceAddress"有效的单元格引用。另请注意,您可以同时执行多个单元格:
Private Sub CommandButton1_Click()
Worksheets("AssemblyTotals").Range("A2:A100").Value = Worksheets("Assembly Work Form").Range("A2:A100").Value 'Do 99 cells at once
End Sub
如果你想从第一个空行开始:
Private Sub CommandButton1_Click()
Dim wr as Long 'Variable to store the row
wr = Worksheets("AssemblyTotals").Range("A2").End(xlDown).Row + 1
Worksheets("AssemblyTotals").Range("A" & wr).Value = Worksheets("Assembly Work Form").Range("A2:A100").Value 'Do 99 cells at once starting at the first empty row in Column A.
End Sub
除非您打算稍后在更多地方使用这些变量,否则无需先将所有内容存储在变量中。另请注意,您不应该使用我的评论中提到的ActiveCell
和Select
等。
基于以上所述,您现在要做的就是正确映射单元格并将其映射出来。