0

我已经编辑了我提供的 VBscript,但我无法生成结果。我需要将两个文件夹路径 C:(相同类型的文件:例如 Text Document/Microsoft excel 2003)和文件的名称(例如 AB01、DE02)提取到文件大小以 kb 为单位的文本文件中。当我运行我的 VBscript 时,它显示

行:16,字符:29,错误:预期')'</p>

下面是脚本:

Sub Tester()

    Dim ObjOutFile

    Set ObjOutFile = CreateObject("Scripting.FileSystemObject"). _
    CreateTextFile("C:\Users\User\Desktop\outcome.txt")


    ListFiles ObjOutFile, "C:\Users\User\Desktop\Folder A", "Microsoft Office Word 97 - 2003 Document"

    ListFiles ObjOutFile, "C:\Users\User\Desktop\Folder A", "Microsoft Office Word 97 - 2003 Document"


    ObjOutFile.Close

End Sub


Sub ListFiles(f, folderPath, fileType)
    Dim ObjFiles, ObjFile, sz

    fileType = UCase(fileType)
    Set ObjFiles = CreateObject("Scripting.FileSystemObject") _
    .getfolder(folderPath).Files

    For Each ObjFile In ObjFiles
        If UCase(ObjFile.Type) = fileType Then
            sz = Round(ObjFile.Size / 1024, 2)
            f.WriteLine sz & String(50 - Len(sz), " ") & ObjFile.Path
        End If
    Next

End Sub
4

1 回答 1

1

您观察到的错误是由您的过程的签名引起的ListFiles。在 VBScript 中,所有变量/参数都是 type Variant,因此您不能显式指定类型。改变这个:

Sub ListFiles(f, folderPath As String, fileType As String)

进入这个:

Sub ListFiles(f, folderPath, fileType)
于 2013-09-08T10:14:56.603 回答