注冊(cè) 登錄
Office中國(guó)論壇/Access中國(guó)論壇 返回首頁(yè)

t小寶的個(gè)人空間 http://m.mzhfr.cn/?71896 [收藏] [復(fù)制] [分享] [RSS]

日志

快速獲取Excel文件所有工作表表名

熱度 1已有 3000 次閱讀2013-8-6 15:30 | Excel, 工作表, 名稱

獲取Excel工作表表名一般使用創(chuàng)建Excel.Application對(duì)象的方法,但速度比較慢。
使用dao的方法則可以快速獲取,代碼如下:


'獲取Excel文件所有工作表名稱的過(guò)程
Public Sub GetExcelSheetName()

    Dim dbs As DAO.Database
    Dim tbf As DAO.TableDef
    Dim sSheetName As String
   
    Dim sFileName As String
    sFileName = "d:\My Documents\個(gè)人文檔\報(bào)名表.xls"
   
    ' 把Excel文件當(dāng)作數(shù)據(jù)庫(kù)用dao打開
    Set dbs = OpenDatabase(sFileName, False, False, "Excel 8.0;")
   
    '循環(huán)所有表
    For Each tbf In dbs.TableDefs
        sSheetName = tbf.Name
       
        ' 如果表名是數(shù)字,兩邊會(huì)加上單引號(hào),這里去掉
        If sSheetName Like "'*'" Then
            sSheetName = Mid(sSheetName, 2, Len(sSheetName) - 2)
        End If
       
        '可能會(huì)返回很多表,但只有最后一個(gè)字符為$的表是可用和可見的,是我們需要的
        If Right(sSheetName, 1) = "$" Then
            sSheetName = Mid(sSheetName, 1, Len(sSheetName) - 1)
            Debug.Print sSheetName
        End If
    Next

End Sub

發(fā)表評(píng)論 評(píng)論 (1 個(gè)評(píng)論)

回復(fù) zhuyiwen 2015-6-8 09:57
贊一個(gè)

facelist doodle 涂鴉板

您需要登錄后才可以評(píng)論 登錄 | 注冊(cè)

QQ|站長(zhǎng)郵箱|小黑屋|手機(jī)版|Office中國(guó)/Access中國(guó) ( 粵ICP備10043721號(hào)-1 )  

GMT+8, 2025-7-13 05:05 , Processed in 0.075631 second(s), 17 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回頂部