我在 SHEET1 中有一个数据输入单元格(单元格 B3)。我想制作一个宏代码,当按下宏按钮时,SHEET1 单元格 B3 中的数据将被复制到 SHEET2 单元格 C5,同时删除 SHEET1 单元格 B3 中输入的数据。然后,当我输入另一个数据并再次按下按钮时,数据将被复制到 SHEET2 的下一行,在本例中是单元格 C6。然后是单元格 C7、C8,依此类推。
我尝试为此编写代码,但无法使其从单元格 C5 开始。它总是从单元格 C2 开始,然后向下。我尝试研究“Startrow”之类的代码,但无法使其工作。
请参阅下面的代码:
Sub Button1_Click()
Response = MsgBox("Are you sure?", vbYesNo)
If Response = vbNo Then Exit Sub
Dim nextrow As Long
nextrow = Worksheets("Sheet2").Cells(Rows.Count, "C").End(xlUp).Row + 1
Worksheets("Sheet1").Range("B3").Copy Worksheets("Sheet2").Range("C" & nextrow)
Worksheets("Sheet1").Range("B3").ClearContents
End Sub
答案1
好吧,如果您希望在第一次运行宏时将数据复制到第 5 行,您可以这样做:
子按钮1_点击() 响应 = MsgBox(“你确定吗?”, vbYesNo) 如果响应 = vbNo 则退出子程序 Dim nextrow As Long nextrow = 工作表(“Sheet2”)。单元格(Rows.Count,“C”)。结束(xlUp)。行 + 1 →→ 如果 nextrow < 5 则 nextrow = 5 ←← 工作表("Sheet1").范围("B3").复制工作表("Sheet2").范围("C" & nextrow) 工作表("Sheet1").范围("B3").ClearContents 子目录结束