我是VBA的新手,我只是从本网站的解决方案中复制代码,但对于这个,我找不到类似的问题。
当A列和B列与“cat”对齐时,我想只复制某些单元格(不是整行)。我还想删除我复制的那一行。
到目前为止我的代码:
Sub animals()
Dim rcnt As Long
rcnt = Worksheets("sheet1").Range("A" & Rows.Count).End(xlUp).Row
For i = 1 To rcnt
If Range("B" & i).Value = "cat" And ("A" & i) = "apple" Then
Range("C" & i).Offset(1, 0).Copy
Range("D" & i).Offset(1, 0).Copy
End If
Next i
End Sub
答案 0 :(得分:1)
For i = 1 To rcnt
If Range("B" & i).value = "cat" And ("A" & i) = "apple" Then
Range("C" & i).value = Range("C" & i).Offset(1, 0).value
Range("D" & i).value = Range("D" & i).Offset(1, 0).value
End If
Next i
您正在复制数据,而不是将其粘贴到任何地方。此方法将跳过.Copy
(跳过剪贴板),并将值设置为相等。