Excel精英培训网

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

vba实现vlookup跨表查询

[复制链接]
发表于 2021-5-10 16:22 | 显示全部楼层 |阅读模式
3学分
文件比较大无法上传。
具体情况是,根据表1中合同编号一列的值,去表2中查询相同的合同编号,返回表2中对应的合同金额。

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2021-5-10 16:24 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2021-5-10 16:26 | 显示全部楼层
就是这个文件

vba测试(已自动还原).zip

541.01 KB, 下载次数: 12

回复

使用道具 举报

发表于 2021-5-10 20:06 | 显示全部楼层
Sub 按钮1_Click()
Application.ScreenUpdating = False
    Dim i, k, v, arr, db
   
    arr = Sheets("合同列表").Range("a1").CurrentRegion
    Set db = CreateObject("Scripting.Dictionary")
    For i = 2 To UBound(arr)
        k = Trim(arr(i, 2))
        v = arr(i, 4)
        db(k) = v
    Next i
  
    Sheets("总表").Select
    For i = 2 To Sheets("总表").UsedRange.Rows.Count
        k = Trim(Cells(i, 3))
        v = db(k)
        Cells(i, 4) = v
    Next i
Application.ScreenUpdating = True

End Sub
回复

使用道具 举报

发表于 2021-5-10 20:09 | 显示全部楼层
请查看

vba测试(已自动还原).zip

641.16 KB, 下载次数: 36

回复

使用道具 举报

发表于 2021-5-10 20:12 | 显示全部楼层
已解决
回复

使用道具 举报

发表于 2021-5-10 21:33 | 显示全部楼层
请看这个,不用VLOOKUP 也可能跨表查询导入 https://www.aidunsoft.com/photo/show-83.html
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 18:31 , Processed in 0.242073 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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