我在同一张纸上有四列。我想创建一个宏,以便每次运行宏时,C列中的值将被复制并粘贴到D列中的下一个空行上。例如,首先我们有:
Column A Column B Column C Column D
1 41 42
C列包含公式= A1 + B1。
运行宏后,我们会得到:
Column A Column B Column C Column D
1 41 42 42
如果我在A列和B列中使用不同的值再次运行宏,我会得到:
Column A Column B Column C Column D
10 90 100 42
100
等等。
我尝试了可视化基本代码:
Sub Copy()
Sheets("Sheet1").Range("C1").Copy
Sheets("Sheet1").Range("D1").PasteSpecial
End Sub
但这不起作用。它没有特殊粘贴,也没有找到D列中的下一个空行。
有谁能让我知道如何正确编写代码? 非常感谢
答案 0 :(得分:0)
你需要向下移动:
Sub xCopy()
If Sheets("Sheet1").Range("D1").Value = "" Then
n = 1
Else
n = Sheets("Sheet1").Cells(Rows.Count, "D").End(xlUp).Row + 1
End If
Sheets("Sheet1").Range("C1").Copy
Sheets("Sheet1").Range("D" & n).PasteSpecial Paste:=xlPasteAll
End Sub