- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Excel-VBA-ADOSQL实例集锦
1, 包含空值的记录 f13 is null
‘/dispbbs.asp?boardID=5ID=46032page=1
‘订单生成系统.xls
‘f6-第6列,f2-第2列
Private Sub Worksheet_Activate()
On Error Resume Next
Dim x As Object, yy As Object, sql As String
Set x = CreateObject(ADODB.Connection)
x.Open Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;hdr=no;;Data Source= ActiveWorkbook.FullName
sql = select f6,f2,f3,f4,f5,f7,f13,f24 -f25 from [sheet1$] where f24 -f25f17 and (f13C3 or f13 is null) ‘不等于字符串用 ‘C3’
Set yy = x.Execute(sql)
Range(a:h).ClearContents
Range(a1:h1) = Array(编号, 品名, 规格, 产地, 单位, 件装, 属性, 计划) ‘表头 另外赋值
[a2].CopyFromRecordset yy
Set yy = Nothing
Set x = Nothing
End Sub
2,用ADO Connection对象查询
Option Explicit
Public conn As ADODB.Connection
Sub Myquery()
Dim sConnect$, sql1$
Set conn = CreateObject(adodb.connection)
Sheets(sheet1).Cells.ClearContents
sConnect = provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0; _
Data Source= ThisWorkbook.Path \ ThisWorkbook.Name
sql1 = select 物料代码,物料描述,属性,单位 from [物料代码表$] where 属性= 采购 表格名要用[$],条件部分用单引号
ThisWorkbook.Sheets(sheet1).Cells(2, 1).CopyFromRecordset conn.Execute(sql1) copy后面紧接SQL查询执行语句
With Sheets(sheet1)
.Range(A1) = 物料代码 建立表头
.Range(B1) = 物料描述
.Range(C1) = 属性
.Range(D1) = 单位
End With
conn.Close 可不用每次关闭数据源的连接
End Sub
3,用记录集执行单个查询
Option Explicit
Sub Myquery()
Dim rd As ADODB.Recordset
Dim i%, j%, k%, sConnect$, sql1$, str$
Set rd = New ADODB.Recordset
str = 外协
Sheets(sheet1).Cells.ClearContents
sConnect = provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0; _
Data Source= ThisWorkbook.Path \ ThisWorkbook.Name
conn.Open sConnect 打开数据源
sql1 = select 物料代码,物料描述,属性,单位 from [物料代码表$] where 属性= 采购 表格名要用[$],条件部分用单引号
rd.Open sql1, sConnect, adOpenForwardOnly, adLockReadOnly
ThisWorkbook.Sheets(sheet1).Cells(2, 1).CopyFromRecordset rd
With Sheets(sheet1)
.Rang
文档评论(0)