阅读Excel文件表名称

Kev*_*vin 1 excel ms-access access-vba ms-access-2010

我有一个导出过程,将数据从我的Access表传输到Excel文件.有几次我遇到的问题是,这个过程没有在Excel中生成一个或多个工作表(1张= 1个表).因此,当传输完成后,我希望Access检查所有工作表是否都位于Excel文件中.我已经完成了大部分检查过程,我现在需要的是一种将Excel文件中的工作表名称"读取"到表中的方法.如何阅读工作表名称(而不是数据)?

Han*_*sUp 8

从Access,您可以自动执行Excel,打开工作簿文件,并从Worksheets集合中读取工作表名称.

此示例使用后期绑定.如果您更喜欢早期绑定,请添加Microsoft Excel [版本]对象库的引用,并启用"早期"行而不是"迟"行.

为该过程提供工作簿文件的完整路径作为其pWorkBook参数.

Public Sub List_worksheets(ByVal pWorkBook As String)
    'Dim objExc As Excel.Application ' early
    'Dim objWbk As Excel.Workbook ' early
    'Dim objWsh As Excel.Worksheet ' early
    Dim objExc As Object ' late
    Dim objWbk As Object ' late
    Dim objWsh As Object ' late

    'Set objExc = New Excel.Application ' early
    Set objExc = CreateObject("Excel.Application") ' late
    Set objWbk = objExc.Workbooks.Open(pWorkBook)
    For Each objWsh In objWbk.Worksheets
        Debug.Print objWsh.Name
    Next
    Set objWsh = Nothing
    objWbk.Close
    Set objWbk = Nothing
    objExc.Quit
    Set objExc = Nothing
End Sub
Run Code Online (Sandbox Code Playgroud)