Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1790|回复: 3

二列数据对比,然后提取A列没有的数据倒C列

[复制链接]
发表于 2019-8-17 17:13 | 显示全部楼层 |阅读模式
我现在有二个工作表,工作表A和B的A列都有数据我要把工作表B A列的数据和工作表A A列的数据对比。然后工作表B A列没有的数据都提取倒工作表B A列的下面。工作表A里A列的数据每个月都要增加。修改

提取.rar

7.03 KB, 下载次数: 7

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2019-8-17 20:32 | 显示全部楼层
Sub kk()
    Dim dic As Object, arr_A(), arr_B(), arr()
    Set dic = CreateObject("scripting.dictionary")
    irow = Sheet1.Cells(Rows.Count, 1).End(3).Row
    arr_A = Sheet1.Range("a2:a" & irow).Value
    ReDim arr(1 To UBound(arr_A), 1 To 1)
    irow = Sheet2.Cells(Rows.Count, 1).End(3).Row
    arr_B = Sheet2.Range("a2:a" & irow).Value
    For i = 1 To UBound(arr_B)
        dic(arr_B(i, 1)) = ""
    Next i
   
    For i = 1 To UBound(arr_A)
        If dic.exists(arr_A(i, 1)) = False Then
            n = n + 1
            arr(n, 1) = arr_A(i, 1)
        End If
    Next i
   
    With Sheet2
        .Range("a" & irow + 1).Resize(n, 1) = arr
    End With
End Sub
回复

使用道具 举报

 楼主| 发表于 2019-8-18 17:37 | 显示全部楼层
mytto88 发表于 2019-8-17 20:32
Sub kk()
    Dim dic As Object, arr_A(), arr_B(), arr()
    Set dic = CreateObject("scripting.dict ...

老师你好。能不能加一个判断,现在如果说没有新增的时候就会报错。、加个判断就是如果本月无新境货号
回复

使用道具 举报

发表于 2019-8-18 20:07 | 显示全部楼层
With Sheet2
        If n > 0 Then
            .Range("a" & irow + 1).Resize(n, 1) = arr
        End If
End With
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 13:40 , Processed in 0.647285 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表