Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

【Access小品】不打开Excel读取标签名

时 间:2014-11-27 09:02:14
作 者:煮江品茶   ID:10802  城市:武汉
摘 要:【Access小品】不打开Excel读取标签名
正 文:

  我们用SQL或ADO操作Excel表时,需要指定sheet名称。一般情况下,我们对sheet的名称是已知的。但是,有时候标签名称不确定,或者标签名称是按照某种编码方式产生的。这种情况下,得到标签名称就十分必要了。我们当然可以通过打开Excel表对象,然后遍历sheets来得到标签名称,但这种处理效率较低,也很麻烦。那么是否可以在不打开Excel表的情况下,得到标签名称呢?答案是肯定的。


  由于我们可以将Excel表作为数据源进行连接,因此我们就可以通过这个连接的某些属性得到Excel表所包含的标签(相当于table)。在这个处理中我们需要引用或创建ADOX.Catalog对象,这个对象包含了tables属性,由此得到table以及它的名称。




Function GetSheetName(filepath As String, n As Integer) As String
    '功能:返回标签名称
    '引用:Mocrosoft ADO Ext 2.8 for DDL and Securty
    '参数:filepath--Excel文件名,n--标签序号(从1开始)
    Dim conn As New ADODB.Connection
    Dim cat As New ADOX.Catalog
    Dim sheetname As String
    conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & ";Extended Properties=Excel 8.0;"
    conn.Open
    Set cat.ActiveConnection = conn
    sheetname = cat.Tables(n - 1).Name


    conn.Close
    Set cat = Nothing
    Set cnn = Nothing
    GetSheetName = sheetname
End Function


Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助