我想在特定的Excel工作表中打印所有工作表名称。如果我正在为当前工作簿执行此操作,那么这就是我的代码:
For Each sht In ActiveWorkbook.Sheets
Debug.Print sht.Name
Next sht
我想打印变量中存在的所有工作表的名称,比如sFilePath
,这是excel文件的绝对文件路径。如何打印该excel文件中所有工作表的名称?
答案 0 :(得分:1)
您需要在获取工作表名称之前打开该文件:
Dim sFilePath As String
sFilePath = Application.GetOpenFilename()
Workbooks.Open (sFilePath)
For Each sht In ActiveWorkbook.Sheets
Debug.Print sht.Name
Next sht
'to close sFilePath workbook
ActiveWorkbook.Close False
希望得到这个帮助。
答案 1 :(得分:1)
打印给定目录中的文件和工作表:
Sub Main()
filePath = "C:\Users\jesse\Documents\ExcelTest\" 'folder to search
currentFile = Dir(filePath & "*.xls*")
Do Until currentFile = ""
Debug.Print currentFile
Set Workbook = Workbooks.Open(filePath & currentFile, False, True)
For Each Sheet In Workbook.Sheets
Debug.Print Sheet.Name
Next Sheet
Workbook.Close SaveChanges:=False
currentFile = Dir
Loop
Set Workbook = Nothing
End Sub
希望这能解决你的问题。干杯!