我对VBA一点都不好,但我很想知道是否有办法计算工作簿中工作表的数量,这个工作簿是为文件夹中的所有文件循环的 .
例如,A1列出文件名,B1显示工作表数 .
A1 B1
book1 5
book2 6
目前已设置此代码,需要对其进行调整
Sub ListAllFile()
Dim objFSO As Object
Dim objFolder As Object
Dim objFile As Object
Dim ws As Worksheet
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set ws = Worksheets.Add
Set objFolder = objFSO.GetFolder("W:\101g-19 (4.20.18) - Copy\")
ws.Cells(1, 1).Value = "The files found in " & objFolder.Name & " are:"
For Each objFile In objFolder.Files
ws.Cells(ws.UsedRange.Rows.Count + 1, 1).Value = objFile.Name
'ADD A WORKSHEET AND PASTE "=SHEETS()" in A1 the copy value of a1 in to list
'close files with out saving
Next
Set objFolder = Nothing
Set objFile = Nothing
Set objFSO = Nothing
End Sub
3 回答
请看下面的内容 - 请注意,您应该从空白工作表中运行此操作
在for循环中,打开文件(假设它们都是excel)并获取工作表的数量 .
就像是:
UDF上面应该打开指定文件夹中的所有文件,并在新工作表上为每个工作簿提供工作表的数量