ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 2349|回复: 4

[求助] access中这类查询如何被vba调用?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-7-25 17:24 | 显示全部楼层 |阅读模式
access 数据库中有sheet1表和3个查询"1","2","总"

"1"的内容如下:
SELECT sheet1.Name, Sum(IIf(sheet1.购买日期,1,0)) AS 购买量
FROM sheet1
WHERE (((sheet1.购买日期)>=[QS] And (sheet1.购买日期)<=[JS]))
GROUP BY sheet1.Name;

"2"的内容如下:
SELECT sheet1.Name, Sum(IIf(sheet1.使用日期,1,0)) AS 使用量
FROM sheet1
WHERE sheet1.使用日期>=[QS] And sheet1.使用日期<=[JS]
GROUP BY sheet1.Name;

"总"的内容如下:
SELECT [1].Name, [1].购买量, [2].使用量
FROM 1 LEFT JOIN 2 ON [1].Name = [2].Name;

现在我想在vba中调用"总",请问代码如何写?
我目前是sql = "SELECT [1].Name, [1].购买量, [2].使用量 FROM 1 LEFT JOIN 2 ON [1].Name = [2].Name"
可是会报错,至少缺少一个参数。

求教了,谢谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-7-26 10:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
求教,有人知道吗?

TA的精华主题

TA的得分主题

发表于 2012-7-26 11:52 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-7-26 17:09 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
轻风 发表于 2012-7-26 11:52
调用来干嘛?想查看查询结果吗?

想在excel中显示结果

TA的精华主题

TA的得分主题

发表于 2012-7-28 14:17 | 显示全部楼层
直接使用“总”就好了。
如果是Excel VBA的话,进行数据连接(ADODB.Connection)后,直接用:
rst.Open "总", cnn, adOpenKeyset, adLockOptimistic
rst为创建的记录集,cnn为数据连接。
如果是在Access里处理的话,直接用TransferSpreadsheet宏就好了,参数分别是:
迁移类型:导出
电子表格类型:Microsoft Excel 8-10
表名称:总
文件名称:需要导出的路径(例如:C:\AA.xls)
其余参数默认。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-9 05:01 , Processed in 0.021070 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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