vba搜索java里面的sql_Excel VBA+SQL 代替Vlookup精确查找

本文介绍了如何使用Excel VBA结合SQL的Left Outer JOIN实现比Vlookup更精确的数据查找。通过示例展示了如何设置SQL语句,从查询表与数据表中匹配并获取姓名、基本工资和部门等信息。核心代码包括SQL查询和VBA遍历结果。提供了详细的步骤和代码示例。
摘要由CSDN通过智能技术生成

SQL代替Vlookup 精确查找(左连接 "Left Outer JOIN" 用法) 语法如下:Select 表名 .字段1,表名 .字段2,表名 .字段3,表名 .字段4 FROM 查询表 AS 别名1 Left Outer JOIN 被查询表 AS 别名2 ON 别名1.字段名=别名2.字段名

看起来很复杂,用起来很简单。

源数据:

06ed3ab900ae66002e42467c288f533d.png

Excel VBA+SQL 代替Vlookup精确查找

问题如下

问题描述:需要按照查询工作表的要求,来查询数据表里面的姓名,基本工资,部门等数据。具体结果如下图

6238e747777299b76818683f214b4325.png

Excel VBA+SQL 代替Vlookup精确查找

代码运行的结果如下:

c77d970ea9c817e650977cc4a63df23b.gif

Excel VBA+SQL 代替Vlookup精确查找

代码如下:

56e1790897022aa4aa8c59256f886524.png

Excel VBA+SQL 代替Vlookup精确查找

核心SQL语句Sql = "SELECT A.姓名,基本工资,部门 from[需查询$] as a left outer join [数据表$] as b on b.姓名=a.姓名 "

注意事项:For i = 0 To rst.Fields.Count - 1

.Cells(1, i + 1) = rst.Fields(i).Name

"利用fields属性获取所有字段名,fields包含了当前记录有关的所有字段,fields.count得到字段的数量

"由于Fields.Count下标为0,又从0开始遍历,因此总数-1

Next

另外:Left Outer JOIN 在SQL FROM语句中OUTER是可选的。通常习惯性写为:

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值