我能夠連接和查詢特定工作表。某些文件可能會有第一個工作表名稱不同或更改,有時可能會有多個文件名稱。使用ADODB從關閉文件中按Tab鍵順序返回工作表名稱
我嘗試了幾個不同的函數來返回完整列表。但是,沒有人按照它們在Excel中顯示的順序給我提供工作表選項卡名稱。
最簡單的方法是這樣的。
Set cat = CreateObject("ADOX.Catalog")
Set cat.ActiveConnection = objConnection
Debug.Print cat.Tables.Count
For Each tbl In cat.Tables
Debug.Print tbl.Name
Debug.Print tbl.datecreated
Debug.Print tbl.datemodified
Next tbl
我想我可以通過datecreated或datemodified來確定,但所有4的日期都是一樣的。
> This prints for me:
> Avion$
> 3/17/2017 12:43:19 PM
> 3/17/2017 12:43:19 PM
> Meow$
> 3/17/2017 12:43:19 PM
> 3/17/2017 12:43:19 PM
> Sheet1$
> 3/17/2017 12:43:19 PM
> 3/17/2017 12:43:19 PM
> Sheet2$
> 3/17/2017 12:43:19 PM
> 3/17/2017 12:43:19 PM
因此,它給了我工作表選項卡名稱列表的字母排序。
但是在工作表的順序是:
>[Sheet1][Avion][Sheet2][Meow]
我無法找到任何屬性來告訴我訂單。
謝謝你,我昨天沒有使用DAO想出解決辦法,實際上建立了一個功能...但我很驚訝,我不能用ADO做到這一點。由於DAO最終將會失效,並且技術上微軟認爲它被拋棄了,所以我擔心... – ReportWarrior