121044246 发表于 2021-9-26 02:58:27

使用ADODB连接EXCEL,怎么获取第一个工作表名称

$Excelconn = ObjCreate("ADODB.Connection")
        $ExcelRS = ObjCreate("ADODB.Recordset") ;需要先安装AccessDatabaseEngine
        $Excelconn.Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & $xlsx & ";Extended Properties='Excel 12.0; HDR=no'") $aExcelArray = $Excelconn.Execute("SELECT * FROM ").GetRows
使用这个读取整个工作表数据需要指定工作表名称,对于不同文件工作表名称可能不一样,请教一下怎么获取excel文件的第一个工作表名称,然后使用$aExcelArray = $Excelconn.Execute("SELECT * FROM ").GetRows 读取数据呢

wyl0205 发表于 2021-9-26 09:59:35

excel有专门的函数,为什么还要用ado呢?

chzj589 发表于 2021-9-26 10:10:18

; *****************************************************************************
; 显示特定工作簿的所有工作表清单
; *****************************************************************************
Local $aWorkSheets = _Excel_SheetList($oWorkbook)

zghwelcome 发表于 2021-9-26 10:19:26

本帖最后由 zghwelcome 于 2021-9-26 10:23 编辑

**** Hidden Message *****



121044246 发表于 2021-9-26 11:47:09

wyl0205 发表于 2021-9-26 09:59
excel有专门的函数,为什么还要用ado呢?

我只想读取数据。不需要打开excel文件

121044246 发表于 2021-9-26 11:49:47

chzj589 发表于 2021-9-26 10:10
; *****************************************************************************
; 显示特定工作簿的 ...

谢谢大神指点

121044246 发表于 2021-9-26 13:56:06

zghwelcome 发表于 2021-9-26 10:19
**** 本内容被作者隐藏 ****

谢谢大神指点

121044246 发表于 2021-9-26 13:59:50

zghwelcome 发表于 2021-9-26 10:19
**** 本内容被作者隐藏 ****

还有个问题请教一下。如果读取工作表名失败,怎么处理这个错误,防止脚本崩溃呢?
The requested action with this object has failed.:
$aExcelArray = $Excelconn.Execute("SELECT * FROM [??$]").GetRows

zghwelcome 发表于 2021-9-26 17:55:32

找这个函数的示例 ObjEvent

chzj589 发表于 2021-9-27 19:57:37

121044246 发表于 2021-9-26 13:59
还有个问题请教一下。如果读取工作表名失败,怎么处理这个错误,防止脚本崩溃呢?

会读取文件失败,不会读取工作表名失败

121044246 发表于 2021-9-30 15:58:12

chzj589 发表于 2021-9-27 19:57
会读取文件失败,不会读取工作表名失败

谢谢,已经解决了。

dhlhmgc 发表于 2021-10-10 23:23:46

看看,学习一下
页: [1]
查看完整版本: 使用ADODB连接EXCEL,怎么获取第一个工作表名称