如何生成所有 Word 文档及其模板的列表?

如何生成所有 Word 文档及其模板的列表?

我想生成笔记本电脑上所有 Word 文档的列表以及每个文档使用的模板。有没有办法生成这样的列表?如果没有,如何获取使用指定模板的所有 Word 文档的列表?这个愿望部分是因为我想删除我不使用的模板。我正在使用 Microsoft 365。

答案1

这对我有用:

Sub listDocs()
    Dim FileSystem As Object
    Dim HostFolder As String

        'change folder name as needed
    HostFolder = "C:\users\myname"

    Set FileSystem = CreateObject("Scripting.FileSystemObject")
    getDocs FileSystem.GetFolder(HostFolder)
End Sub

Sub getDocs(Folder)
    Dim SubFolder As Object
    
    For Each SubFolder In Folder.SubFolders
        Debug.Print SubFolder
        getDocs SubFolder
    Next
    Dim File
    For Each File In Folder.Files
        If File.Type = "Microsoft Word Document" Then
            
            Documents.Open FileName:=File.Path, ReadOnly:=True
            Debug.Print File.Path, Documents(File.Name).AttachedTemplate
            Documents(File.Name).Close
        End If
    Next
End Sub

这是基于https://stackoverflow.com/questions/22645347/loop-through-all-subfolders-using-vba它将打印每个文件夹和每个带有其模板名称的 Word 文件。

请注意,这将花费很长时间,因为它需要打开您电脑上的每一个 Word 文件

相关内容