Office及VBA技术交流

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2170|回复: 0

Excel VBA如何实现不打开Excel的情况下读取工作簿里的表名

[复制链接]
  • TA的每日心情
    开心
    2016-3-4 07:46
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    56

    主题

    124

    帖子

    736

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    736
    发表于 2016-3-9 16:36:52 | 显示全部楼层 |阅读模式
    VBA如何实现不打开Excel的情况下读取工作簿里的表名

    可以使用以下代码
    1. Sub GetSheetsNameWithoutOpen()

    2.     Dim cat
    3.     Dim cnn
    4.     Dim c
    5.    
    6.     Set cnn = CreateObject("ADODB.Connection")
    7.     Set cat = CreateObject("ADOX.Catalog")
    8.     cnn.Open "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ= C:\abc.xls"
    9.    
    10.     Set cat.ActiveConnection = cnn
    11.    
    12.     For Each c In cat.Tables
    13.         Debug.Print c.Name
    14.     Next c
    15.    
    16.     Set c = Nothing
    17.     Set cat.ActiveConnection = Nothing
    18.     Set cat = Nothing
    19.     Set cnn = Nothing

    20. End Sub
    复制代码
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Office Master ( 蜀ICP备16003423号 )

    GMT+8, 2019-10-19 02:40 , Processed in 0.201577 second(s), 24 queries .

    Office Master

    快速回复 返回顶部 返回列表