搜索查找数组中是否存在查找值对(在列D,E中)的脚本/宏(在列A,B中)

时间:2016-11-18 05:37:58

标签: excel excel-vba excel-formula excel-2013 vba

脚本/宏,用于搜索查找值对(在列C,D中)是否存在于查找数组中(在列A,B中)。

我遇到了MATCH VLOOKUP,但他们只查找了一个值,但我想要的是以下内容。

请注意:COLUMN A始终按排序顺序

  A          B         C              D         E         F
 _______________________________________________________________________
  BOB        100      details1       CCA       100        print "False"       
  BOB        200      details2       DBA       100        print "False"         
  BOB        300      details3       BOB       100        print "details1"         
  CCA        500      details4       BOB       500        print "False"         

2 个答案:

答案 0 :(得分:1)

作为F1

中的数组公式

同时按 CTRL + SHIFT + ENTER

=INDEX($C$1:$C$4,MATCH(D1&E1,$A$1:$A$4&$B$1:$B$4,0))

答案 1 :(得分:0)

我假设您正在分别比较D列和E列以及A列和B列,并且当各列匹配时,您将在列6中打印第3列值与匹配的值集合。

Sub macro()
Dim a, x, y As Integer
a = 1
Cells(a, 4).Select
Do While ActiveCell.Value <> ""
    x = ActiveCell.Value
    y = ActiveCell.Offset(0, 1).Value
    Cells(1, 1).Activate
    Do While ActiveCell.Value <> ""
        If ActiveCell.Value = x Then
            If ActiveCell.Offset(0, 1).Value = y Then
                Cells(a, 6) = ActiveCell.Offset(0, 2).Value
            End If
        End If
        ActiveCell.Offset(1, 0).Activate
    Loop
    a = a + 1
    Cells(a, 4).Select
Loop
End Sub

希望这有帮助!