当满足2个条件时,复制下面一行中的某些单元格

时间:2017-08-18 21:34:31

标签: excel vba excel-vba

我是VBA的新手,我只是从本网站的解决方案中复制代码,但对于这个,我找不到类似的问题。

当A列和B列与“cat”对齐时,我想只复制某些单元格(不是整行)。我还想删除我复制的那一行。

the plan illustrated

到目前为止我的代码:

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 

1 个答案:

答案 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(跳过剪贴板),并将值设置为相等。