使用VBA

时间:2015-09-07 14:59:03

标签: vba excel-vba excel

我有两列,A和B,我需要找到B列上不在A列上的每个元素,并将它们粘贴到第三列C中。 例如:

A   B
23  5
1   4
5   7
4   23 
1 

然后:

C
7

搜索解决方案时,人们通常建议使用VLOOKUP()来解决类似的问题。但是,我需要一些VBA,因为这些列中的每一列都在不同的工作簿中。 做这种比较的好方法是什么?

谢谢

2 个答案:

答案 0 :(得分:1)

您可以在VBA中使用VLookup。这是语法:

Application.WorksheetFunction.VLOOKUP(lookup_value, table_array, column_index, range_lookup)

否则你可以做循环

For each elementB in columnB
   For each elementA in columnA
      If elmentA <> ElementB then
         ---Save ElementA in an Array
      End if
   next elementB
next elementA

答案 1 :(得分:1)

在Vba中使用循环

counter = 0
k = 2

For i = 2 To lastrowA
    For j = 2 To lastRowB
        If Sheet1.Cells(i, "A") = Sheet1.Cells(j, "B") Then
            counter = 1
        End If
    Next j

    If counter = 0 Then
        Sheet1.Cells(k, "C") = Sheet1.Cells(j, "B")
        k = k + 1
    End If
    counter = 0
Next i