美文网首页
如何查找A列有B列没有的数据

如何查找A列有B列没有的数据

作者: 麦睿蔻 | 来源:发表于2019-11-07 21:23 被阅读0次

    《Excel 2010 函数与公式》疑难140

    如图,需要找出A列有B列没有的数据,


    1.jpg

    书上给出的Excel函数如下,要用到可怕的数组函数,括号数量堪比Lisp:

    {=INDEX(A:A,SMALL(IF(ISNA(MATCH($A$3:$A$18,$B$3:$B$10,0))*(MATCH($A$3:$A$18,$A$3:$A$18,0)=ROW($3:$18)-2),ROW($3:$18),4^8),ROW(1:1)))&""}
    

    使用VBA就清晰多了,新建两个数组,分别存储两列数据,比较键值即可:

    Sub A列有B列无()
        Dim d, d1, Temp
        Set d = CreateObject("Scripting.Dictionary")
        Set d1 = CreateObject("Scripting.Dictionary")
        For Each Temp In Range("b3:b10")
            d1(Temp.Value) = 1
            
        Next
        For Each Temp In Range("a3:a18")
            If Not d1.exists(Temp.Value) Then d(Temp.Value) = 1
        Next
        arr = d.keys
        Range("D3").Resize(UBound(arr) + 1, 1) = WorksheetFunction.Transpose(arr)
    End Sub
    

    相关文章

      网友评论

          本文标题:如何查找A列有B列没有的数据

          本文链接:https://www.haomeiwen.com/subject/ajlbbctx.html