根据另一个单元格中的条件将单元格从一张纸复制到另一张纸

时间:2014-09-16 18:35:47

标签: excel vba excel-vba

我希望使用VBA将单元格中的单元格复制到同一工作簿中的另一个工作表,具体取决于两个工作表中某些单元格的条件是否匹配。

实施例: 如果Sheet1!A1 = Sheet2!A1然后复制Sheet1!B1到Sheet2!B2

我可以通过一个函数来完成:=IF($A1=Sheet1!$A1, VLOOKUP(Sheet1!$A1, Sheet1!$A1:$D1, 2),"") 但我无法让它在VBA中运作。我想到了一个IF | ELSE声明,但无法让它发挥作用。

2 个答案:

答案 0 :(得分:0)

这应该适合你:

For Counter = 1 To 10 
    If Sheets(1).Range("A" & Counter).Value = Sheets(2).Range("A" & Counter).Value Then
        Sheets(2).Range("B" & (Counter + 1)).Value = Sheets(1).Range("B" & Counter).Value
    End If
Next Counter

答案 1 :(得分:0)

Sub copyToSheet()
For i = 1 To 10
    If ThisWorkbook.Worksheets("sheet1").Range("A1").Offset(i - 1, 0).Value = ThisWorkbook.Worksheets("sheet2").Range("A1").Offset(i - 1, 0).Value Then
    ThisWorkbook.Worksheets("sheet2").Range("A1").Offset(i - 1, 1) = ThisWorkbook.Worksheets("sheet1").Range("A1").Offset(i - 1, 0).Value
    End If
    Next i
End Sub