使用ADO连接到Excel - 不知道工作表名称

4 excel vba excel-vba

我正在使用ADO连接到Excel,但只有在我指定工作表名称时它才有效.我不会在运行时知道它们.有没有方法来获取工作表名称?Excel自动化?

谢谢.

mjv*_*mjv 10

一旦打开ADO连接,就需要调用OpenSchema()方法,该方法返回一个结果集,其中工作表名称为"table_name"

我对VBA有点生疏,但看起来应该是这样的

Dim oConn
DIm oRs
Set oConn = New ADODB.Connection
Dim sConn
sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=somepathtoXLS; xxx not sure some other connection str props..."
oConn.Open sConn

Set oRS = oConn.OpenSchema(adSchemaTables)
Do While Not oRS.EOF 
   sSheetName = oRS.Fields("table_name").Value
   // do somethng with the sSheetName
   oRS.MoveNext()
Loop
Run Code Online (Sandbox Code Playgroud)