ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 兰色幻想

Excel+ADO(DAO)+SQL+Access专辑(编辑中...)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2004-11-23 10:56 | 显示全部楼层
本帖已被收录到知识树中,索引项:Access协同

你好,总是出现一个对话:编译错误,找不到工程或库。筛选时也出现。请帮忙查一下,谢谢。

TA的精华主题

TA的得分主题

发表于 2004-11-23 11:00 | 显示全部楼层

光标停在

“Private Sub CommandButton1_Click() Dim CNN As New ADODB.Connection”上

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-11-23 11:31 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
以下是引用llgo在2004-11-23 10:56:00的发言:

你好,总是出现一个对话:编译错误,找不到工程或库。筛选时也出现。请帮忙查一下,谢谢。

你没有进行相应的引用

Excel+ADO(DAO)+SQL+Access专辑(编辑中...)

Excel+ADO(DAO)+SQL+Access专辑(编辑中...)

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-11-23 11:42 | 显示全部楼层
以下是引用cofe2000在2004-11-23 10:44:00的发言:

再问版主,如果是从几个表中查询呢

strSQL = "SELECT 工程名称,开票日期,sum(总价) FROM 总表,分表1,分表2 WHERE 总价 <>"""" GROUP BY 工程名称,开票日期 "

语句有错误,建议再看看一楼的教程(最好一楼关于SQL的都看看)

[此贴子已经被作者于2004-11-23 11:45:41编辑过]

TA的精华主题

TA的得分主题

发表于 2004-11-23 12:36 | 显示全部楼层
以下是引用兰色幻想在2004-11-23 11:42:00的发言:

语句有错误,建议再看看一楼的教程(最好一楼关于SQL的都看看)

看了一个中午的教程,这个还是没有搞定,别的倒是学会了一点:)

试了n遍还是不行,有请老大在给看看, f3T3KR26.rar (71.2 KB, 下载次数: 100)

TA的精华主题

TA的得分主题

发表于 2004-11-23 13:00 | 显示全部楼层

cofe2000:

看了一下你的sql语句

SELECT au_lname ,title FROM authors, titles

此语句是有问题,它并不能提出你在51楼的目的,应如下写法

SELECT a.au_lname ,b.title

FROM authors a, titles b

WHERE A.ID=B.ID(id为两表关联字段)

或:

SELECT authors.au_lname ,titles.title

FROM authors inner(或left) join titles on authors.id=titles.id (id为两表关联字段)

以下语名也有同样错误:

SELECT 工程名称,开票日期,sum(总价) FROM 总表,分表1,分表2 WHERE 总价 <>"""" GROUP BY 工程名称,开票日期

此语句的问题同上面一样,你没有列示各表之间的关联条件(即通过各表中的哪个字段进行关联及关联关系)。

以下语句为你所提供的案例中应列示的正确语句:

SELECT * FROM 总表,分表 where 总表.物资名称=分表.物资名称 and 总表.工程名称= '2003线基-011'

[此贴子已经被作者于2004-11-23 13:13:56编辑过]

TA的精华主题

TA的得分主题

发表于 2004-11-23 13:10 | 显示全部楼层

多谢,51楼的是我从顶楼的教程中摘录的一段

请问sql语句中的a和b代表什么啊?我刚开始学sql,请多指教

做好是能帮我看一下56楼附件中的问题

TA的精华主题

TA的得分主题

发表于 2004-11-23 13:19 | 显示全部楼层
上述56楼范例中最好不*来提取两表中的所有字段,最好用a.* 或b.* 或者选择你所要提取的任意字段均可。

TA的精华主题

TA的得分主题

发表于 2004-11-23 13:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

可是我要的就是所有的字段啊,如果从一个表提取的话没有问题,从2个表分别提取就不行了,粗体部分应该如何改呢 Sub 单击() Dim CNN As New ADODB.Connection Dim RST As New ADODB.Recordset Dim Stpath, strSQL As String Stpath = ThisWorkbook.Path & Application.PathSeparator & "电子领料.mdb" CNN.Open "provider=Microsoft.jet.OLEDB.4.0;data source=" & Stpath '& ";Jet OLEDB:Database Password=" & "123" strSQL = "SELECT * FROM 总表,分表 where 工程名称= '2003线基-011'" RST.Open strSQL, CNN Sheet1.Range("A2:m100").ClearContents Sheet1.Cells(2, 1).CopyFromRecordset RST RST.Close Set RST = Nothing Set CNN = Nothing End Sub

TA的精华主题

TA的得分主题

发表于 2004-11-23 13:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

请问sql语句中的a和b代表什么啊?我刚开始学sql,请多指教

a和b都代表表的名称. 如果设计到两个表,需要用 【表名。字段】 来表示表与表之间的关系,我也刚学,cofe2000兄看看是不是如此.将你的查询语句改一下:

strSQL = "SELECT * FROM 总表,分表 where 分表.工程名称='2003线基-011' and 总表.工程名称=分表.工程名称"

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

本版积分规则

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

GMT+8, 2024-4-29 01:16 , Processed in 0.032164 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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