栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在vba中的关联数组,例如php

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在vba中的关联数组,例如php

您可以对打开的工作簿中的工作表进行SQL查询(与其他任何工作簿相同)。在这种情况下,查询字符串将如下所示:

SELECt SUM([Training Hours]) AS Myval FROM [data sheet$] WHERe Country = 'USA' AND [Training Status] = 'Completed';

这是代码

Sub TestSQLRequest()    Const adOpenStatic = 3    Const adLockOptimistic = 3    Const adCmdText = &H1    Select Case LCase(Mid(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".")))        Case ".xls" strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='" & ThisWorkbook.FullName & "';Mode=Read;Extended Properties=""Excel 8.0;HDR=YES;"";"        Case ".xlsm" strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source='" & ThisWorkbook.FullName & "';Mode=Read;Extended Properties=""Excel 12.0 Macro;HDR=YES;"";"    End Select    With CreateObject("ADODB.Connection")        .Open strConnection        With .Execute("SELECT SUM([Training Hours]) AS Myval FROM [data sheet$] WHERe Country = 'USA' AND [Training Status] = 'Completed';") Myval = .Fields("Myval")        End With        .Close    End With    MsgBox MyvalEnd Sub

在查询字符串中,带空格的列名称以及包含数据的工作表名称应放在方括号中,后跟

$
。不言而喻,查询无法访问数据,在对工作表进行一些更改之后,该数据并未保存到文件中。请注意,
Excel8.0
提供程序不适用于64位Excel版本,请尝试改用
Excel 12.0
提供程序(第二个
strConnection
分配)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/375589.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号