【发布时间】:2020-02-22 22:28:22
【问题描述】:
我写了一个 VBA 宏(部分是我的和来自 Internet 的 partyl sn-ps),它列出了宏可以在起始路径中找到的所有 zip 文件中包含的所有文件:
folder_path = "C:\Users\[MYNAME]\Desktop\prod"。
这行得通。它贯穿每个文件夹直至 zipArchive,其中包含多个 zip 文件,这些 zip 文件中包含多个文件(没有其他文件夹)。我开始让宏写下关于那些文件的一些信息,例如名称、大小、...
现在我这样做的原因是我对每个 zip 文件中文件的创建日期/最后修改日期感兴趣。所以我用了
Range("B" & i).Value = fileNameInZip.DateCreated
返回一个错误,指出对象不支持该方法或属性……
有人可以帮我吗?
Private Sub Get_Information3()
folder_path = "C:\Users\[MYNMAME]\Desktop\prod"
Dim sh As Worksheet
Set sh = ThisWorkbook.Sheets("Tabelle1")
Dim oFSO As Object
Dim oFolder As Object 'prod
Dim oSubFolderSupplier As Object 'Supplier
Dim oSubFolderCountry As Object
Dim oSubFolderDatabase As Object
Dim oSubFolderZipArchive As Object
Dim oFileinZipArchive As Object
Dim last_row As Integer
Dim oApp As Object
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.GetFolder(folder_path)
Set oApp = CreateObject("Shell.Application")
Dim i, r As Integer
Dim fileNameInZip As Variant
Dim Fname As Variant
Dim sh1 As Worksheet
Set sh = ThisWorkbook.Sheets("Tabelle1")
Dim Stringtest As Integer
Dim test1 As String
i = 2
For Each oSubFolderSupplier In oFolder.SubFolders
For Each oSubFolderCountry In oSubFolderSupplier.SubFolders
For Each oSubFolderDatabase In oSubFolderCountry.SubFolders
For Each oSubFolderZipArchive In oSubFolderDatabase.SubFolders
For Each oFileinZipArchive In oSubFolderZipArchive.Files
Fname = Dir(oFileinZipArchive)
Stringtest = InStrRev(oFileinZipArchive, "\")
test1 = Left(oFileinZipArchive, Stringtest)
If Right(Fname, 4) = ".zip" Then
For Each fileNameInZip In oApp.Namespace(test1 & Fname).Items
Range("A" & i).Value = fileNameInZip.Name
**Range("B" & i).Value = fileNameInZip.DateCreated**
i = i + 1
Next
End If
Next
Next
Next
Next
Next
End Sub
【问题讨论】:
-
建议你在
Range("A" & i).Value = fileNameInZip.Name下断点,打开即时窗口,检查fileNameInZip的暴露属性。这可能会帮助您获得所需的信息。 -
我确实知道如何打开即时命令并将其用于调试打印。但这就是到目前为止。我如何公开
fileNameInZip的属性我有点困惑,因为大小,名称工作 -
看起来你只能得到lastModified 而不能被created。
-
DateLastModified 也不起作用..那怎么可能?它适用于所有其他不在 zip 中的文件
-
误解了你的意图