如何利用VBA获取指定工作簿中的工作表名称

如题所述

如果需要用VBA的方法获得某个工作簿中工作表的名称,可以使用下面的代码,其中使用了 Microsoft ActiveX Data Objects (ADO),可以将指定工作簿中的工作簿名称显示在A列中,在使用时需将代码中的工作簿名称及路径进行更改。
Sub GetSheetNames()
Dim objConn As Object
Dim objCat As Object
Dim tbl As Object
Dim iRow As Long
Dim sWorkbook As String
Dim sConnString As String
Dim sTableName As String
Dim cLength As Integer
Dim iTestPos As Integer
Dim iStartpos As Integer
‘在此输入工作簿名称及路径.
sWorkbook = "G:\Excel文件\book2.xls"
sConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & sWorkbook & ";" & _
"Extended Properties=Excel 8.0;"
Set objConn = CreateObject("ADODB.Connection")
objConn.Open sConnString
Set objCat = CreateObject("ADOX.Catalog")
Set objCat.ActiveConnection = objConn
iRow = 1
For Each tbl In objCat.Tables
sTableName = tbl.Name
cLength = Len(sTableName)
iTestPos = 0
iStartpos = 1
If Left(sTableName, 1) = "’" And Right(sTableName, 1) = "’" Then
iTestPos = 1
iStartpos = 2
End If
If Mid$(sTableName, cLength – iTestPos, 1) = "$" Then
Cells(iRow, 1) = Mid$(sTableName, iStartpos, cLength – _
(iStartpos + iTestPos))
iRow = iRow + 1
End If
Next tbl
objConn.Close
Set objCat = Nothing
Set objConn = Nothing
End Sub
温馨提示:内容为网友见解,仅供参考
无其他回答

如何利用VBA获取指定工作簿中的工作表名称
如果需要用VBA的方法获得某个工作簿中工作表的名称,可以使用下面的代码,其中使用了 Microsoft ActiveX Data Objects (ADO),可以将指定工作簿中的工作簿名称显示在A列中,在使用时需将代码中的工作簿名称及路径进行更改。Sub GetSheetNames()Dim objConn As Object Dim objCat As Object Dim tbl As...

如何利用VBA获取指定工作簿中的工作表名称
新建一个工作簿,在VBA中新建一个模块,将上面的代码复制进去。记住要根据自己指定的工作簿改变一下workbooks.open后面的路径。结果会在新建工作簿中sheets1a列罗列出工作表名称。

excel中vba函数获取工作表名称的操作方法
Excel中vba函数获取工作表名称的方法1:vba自定义函数获取工作表名称。1、打开Excel工作簿文档,按ALT+F11组合键进入VBA编辑器窗口。2、单击“插入”菜单中的“模块”命令。3、复制下面的代码,粘贴到模块框中。Function gname(x As Integer)If x = 0 Then gname = ActiveSheet.Name ElseIf x > 0...

vba如何提取工作表名称?
1.分步阅读 首先我们打开一个工作样表作为例子。2.工作表标签名即是工作表的名称,在指定激活当前工作表时,可以使用worksheets(“工作表名称”)的方法来指定。我们这里可以使用vba来获取这个名称。3.我们使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:Sub Delete_Emp...

Excelvba获提取工作表名称的两种方法
第一,excel提取工作表名称:宏表函数 excel提取工作表名称的方法,在以前的文章:Excel中工作表间的关联链接方法及实例曾经介绍过,使用宏表函数来提取工作表名称,并自动添加超链接。第二,vba自定义函数获取工作表名称 下面再介绍一个vba获取工作表名称的自定义函数。使用方法如下,打开需要excel工作表,...

如何用VBA提取工作薄中工作表的名称?
SUB SHNAME()FOR EACH SH IN THISWORKBOOK.SHEETS i = i +1 CELLS(i,1) =SH.NAME NEXT END SUB 把代码复制到模块中,按F5运行一下,活动工作表A列就会列出所有工作表名了。

使用VBA代码获取工作簿中所有工作表名称,并将其输出到Sheet1工作表的B...
Sub 获取工作表名称 Dim ws As Worksheet Dim i As Integer i = 1 For Each ws In ThisWorkbook.Worksheets Sheets("Sheet1").Cells(i, 2).Value = ws.Name Next ws End Sub

EXCEL如何使用VBA汇总当前路径下的工作簿的相应的工作表
A:ALT+F11>>>插入模块>>>模块中输入以下代码:EXCEL如何使用VBA汇总当前路径下的工作簿的相应的工作表?Sub test()Dim WB As Workbook, WS As Worksheet, FN$, Rng As Range, k As Long Application.ScreenUpdating = False FN = Dir(ThisWorkbook.Path & "\\*.xls*")Application....

怎么快速提取一个excel文件中的所有工作表名
这个只能用vba来解决:取所有工作表名称 按下 alt+f11 ,选择插入 模块,然后复制如下代码:Sub Excel各页名()Dim XStr, YStr, ZStr XStr = " -"ZStr = ""For i = 1 To Worksheets.Count If Worksheets(i).Name = "目录" Then Exit For End If Next If i > Worksheets.Count Then ...

excel中如何批量把一个工作簿当中的每个工作表名称复制出来
打开你的Excel文件,按“Alt+F11”打开VBA编辑窗口,然后在左侧需要存放名称的那个Sheet上双击,右侧空白处粘贴下面的代码。关闭VBA窗口。然后按“Alt+F8”打开宏窗口,选择刚插入的宏,点击“执行”。这样,在该Sheet的A列就会罗列出所有工作表名称。Sub fz()Dim i As IntegerFor i = 1 To Sheets....

相似回答
大家正在搜