首页 > 其他分享 >如何在vba中用ADOX.Catalog获取excel文件的工作表名称?

如何在vba中用ADOX.Catalog获取excel文件的工作表名称?

时间:2022-12-14 17:58:45浏览次数:66  
标签:Dim vba String sVersion excel Catalog sFN ADOX

Sub QQ1722187970()
    Dim sFN As String
    sFN = Excel.Application.GetOpenFilename()
    If Len(sFN) Then
        Dim arrName()
        Dim objCatalog
        Set objCatalog = VBA.CreateObject("ADOX.Catalog")
        Dim sVersion As String
        sVersion = Excel.Application.Version
        Dim sConStr As String
        '创建连接字符串
        If sVersion <= 12 Then
            sConStr = "Provider='Microsoft.Jet.OLEDB.4.0';Data Source=" & sFN & ";Extended Properties='Excel 8.0;HDR=YES'"
        Else
            sConStr = "Provider='Microsoft.ACE.OLEDB.12.0';Data Source=" & sFN & ";Extended Properties='Excel 12.0;HDR=YES'"
        End If
        Dim oConStr
        Set oConStr = CreateObject("ADODB.Connection")
        '使用Connection连接数据源
        oConStr.Open sConStr
        With objCatalog
            '关联Connection对象
            Set .ActiveConnection = oConStr
            Dim oTable
            For Each oTable In .Tables
                Dim sName As String
                sName = oTable.Name
                '提取工作表名称
                If Right(sName, 1) = "$" Then
                    Debug.Print sName
                    ReDim Preserve arrName(k)
                    arrName(k) = Left(sName, Len(sName) - 1)
                    k = k + 1
                End If
            Next
        End With
        Set oConStr = Nothing
    End If
End Sub

 

标签:Dim,vba,String,sVersion,excel,Catalog,sFN,ADOX
From: https://www.cnblogs.com/Insist-Y/p/16982810.html

相关文章

  • Java: 在Excel中插入和提取图片
    在编辑Excel文档时,为了丰富文档内容或者更好地说明文档内容,有时我们会在单元格中插入图片。此外,整理文档内容时,也可以通过编程的方式将图片从Excel中提取出来。接下来我就......
  • EasyExcel导出样式设置(注解)
    EasyExcel导出样式设置(注解)参考资料链接1:EasyExcel--自定义表头(标题)样式策略参考资料链接2:EasyExcel常用注解参考资料链接3:EasyExcel注解大全@HeadRowHeight......
  • 深入理解BootStrap -- 导航页(navbar)11
    1、导航条​​navbar​​)和上一节介绍的导航(​​nav​​),就相差一个字,多了一个“条”字。其实在Bootstrap框架中他们还是明显的区别。在导航条(​​navbar​​)中有一个背景......
  • 宏/VBA批量将文件夹下的csv文件转换成xlsx
    https://blog.csdn.net/weixin_43046974/article/details/120876697宏/VBA批量将文件夹下的csv文件转换成xlsx Subchange_CSV_to_XLSX() ChDir"C:\Users\Administrat......
  • 2022-12-14 Excel中图片的批量提取
    Excel中图片的批量提取:全选原表中的所有内容,复制。在桌面新建一个Excel文件,把复制的内容粘贴到文件中,保存并关闭。将新建的Excel文件右键【重命名】,后缀名改为.zip然......
  • webapi excel导入
     效果图  引入命名空间:usingNPOI;usingNPOI.HSSF.UserModel;usingNPOI.SS.UserModel;usingNPOI.XSSF;usingNPOI.XSSF.UserModel;usingXiaowu_Ship.Model;//......
  • 条件判断IF Else的加持,让VBA能够处理复杂条件,学会了你就是大神
    Hi,大家好,本专栏将会从零开始和大家用图文的方式,让你从零基础学会VBA!有兴趣的小伙伴可以持续关注我,或者在专栏进行查看学习,愿与君携手共进!相信大家经过前面的学习已经能够轻......
  • java 导入Excel数据校验判断哪行那列
    记录工作需求是导入数据的时候需要判断哪一行是空行,或者哪一行超过限制字符,然后返回给前端做展示@PostMapping("/importExcel")@ApiOperation("导入用户")@Ap......
  • 通过代码实现Excel中数据插入数据库
    packagecom.tianju.supermelon.controller;importcom.tianju.supermelon.common.dtos.ResponseResult;importcom.tianju.supermelon.domain.AvatarInfo;importcom.tian......
  • Winform DevExpress控件库(三) 使用NavBarControl控件定制导航栏
    NavBarControl控件:主要作用是制作包含多个选项组并且每个组里包含多个子选项的导航栏;位于工具箱->Navigation&Layout(导航栏与布局类控件)在工具箱输入名称NavBarControl......