sql – 在MS-Access VBA中查询Excel工作表(使用ADODB记录集)
发布时间:2020-05-24 15:09:13 所属栏目:MsSql 来源:互联网
导读:我想在VBA中查询Excel工作表并指定条件. 简单的查询“SELECT * FROM [PCR $]”完美地工作,但我不知道如何添加WHERE子句. 我尝试了cmd2.CommandText =“SELECT * FROM [PCR $] WHERE([B1] IS NOT NULL)”但是它抱怨缺少参数. 这是完整的代码: Dim rs2 As New
|
我想在VBA中查询Excel工作表并指定条件. 简单的查询“SELECT * FROM [PCR $]”完美地工作,但我不知道如何添加WHERE子句. 我尝试了cmd2.CommandText =“SELECT * FROM [PCR $] WHERE([B1] IS NOT NULL)”但是它抱怨缺少参数. 这是完整的代码: Dim rs2 As New ADODB.Recordset
Dim cnn2 As New ADODB.Connection
Dim cmd2 As New ADODB.Command
Dim intField As Integer
Dim strFile As String
strFile = fncOpenFile
If strFile = "" Then Exit Sub
With cnn2
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source='" & strFile & "'; " & "Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"
.Open
End With
Set cmd2.ActiveConnection = cnn2
cmd2.CommandType = adCmdText
cmd2.CommandText = "SELECT * FROM [PCR$]"
rs2.CursorLocation = adUseClient
rs2.CursorType = adOpenDynamic
rs2.LockType = adLockOptimistic
rs2.Open cmd2
解决方法在您的连接字符串中,您说Excel 8.0;HDR=Yes 这意味着第一行将被视为标题,无论它包含什么.如果你想使用F1,F2等,请说 Excel 8.0;HDR=No (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在键值存储中使用索引模拟数据库表的最简单方法是什么?
- sql – Oracle 11g:取消激活多列并包含列名
- 如何在SQL Server中有效地合并两个层次结构?
- sql-server – 存储过程中的临时表将导致重新编译执行计划
- sql-server – 如果SELECT语句中没有结果,则使用CASE返回字
- SQL获取第一条记录的方法(sqlserver、oracle、mysql数据库)
- sql2005 批量更新问题的解决方法
- MySQL中使用SQL语句查看某个表的编码方法
- linux安装mysql和使用c语言操作数据库的方法 c语言连接mysq
- sql-server – 如何在SQL Server Management Studio 2012中
