VBA实用小程序70:获取压缩文件中指定文件的修改日期

excelperfect

引言:这是在chandoo.org的Forums中看到的一个VBA自定义函数,很有意思,特辑录于此,供有兴趣的朋友学习参考。

有时候,可能需要一个能够返回压缩文件(.zip文件)的特定文件夹中某文件修改的日期时间。当然,你可以将这个压缩文件解压缩,然后导航到该文件,查看其修改的日期时间。然而,使用几句VBA代码,就能快速获得指定文件的修改日期时间。

下面是获取压缩文件中指定文件修改日期时间的一个VBA自定义函数:

Function ZipFDT(Z, F) As Date On Error Resume Next ZipFDT =CreateObject('Shell.Application').Namespace(Z).ParseName(F).ModifyDateEnd Function

其中:

  • 参数Z,用来指定压缩文件所在的路径。

  • 参数F,用来指定压缩文件中要获取修改日期时间的文件的路径。

例如,在C盘中有一个名为FolderFile.zip的压缩文件,该压缩文件中有一个名为Folder3的文件夹,该文件夹中有一个名为folder3Myfile3.csv的文件,我们要获取该文件的修改日期时间。

在VBA编辑器中输入上述自定义函数ZipFDT后,可以使用代码调用该函数,以获取文件folder3Myfile3.csv的修改日期时间,代码如下:

Sub test()   Debug.Print ZipFDT('C:\FolderFile.zip', 'Folder3\folder3Myfile3.csv')End Sub

运行test过程后,在立即窗口中可以显示该文件的修改日期时间。

也可以像使用Excel内置函数一样在工作表单元格中输入:

=zipfdt('C:\FolderFile.zip','Folder3\folder3 Myfile3.csv')

获取该文件的修改日期时间。当然,你需要设置该单元格的格式,以正确显示日期时间。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

(0)

相关推荐