应用场景
整理文件夹,删除某个日期之前/后的文件
知识要点 FileSystemObject 对象 提供对计算机文件系统的访问
1:CreateObject('Scripting.FileSystemObject')FSO对象主要用于操作文件、目录和磁盘,对于文件可获取的属性包括1/Attributes—设置或返回文件或文件夹的属性
2/Datecreated—返回指定文件或者文件夹的创建的日期和时间3/DateLastAccessed返回文件或文件夹的上次访问日期和时间
4/DateLastModified返回或指定的文件或文件夹的上次修改日期和时间5/Drive返回指定的文件或文件夹所在的驱动器的驱动器号
6/Name设置或返回指定文件或文件夹的名称7/ParentFolder返回指定文件或文件夹的父文件夹8/Path返回指定文件的路径
9/ShortName返回按早期8.3文件命名约定转换的短文件名10/ShortPath返回按8.3命名约定转换的短路径名
11/size对文件、返回指定文件的字节数12/type返回文件或文件夹的类型信息
3:通过datecreated得到的文件创建时间是字符串,用它作为dateif的参数计算时需要通过 * 1 转成成数值
4:GetFolder 方法 返回一个和指定路径中文件夹相对应的 Folder 对象
5:Files 属性 返回由所有 File 对象组成的 Files 集合,这些 File 对象包含在指定的文件夹中──包括设置了隐藏和系统文件属性的那些文件
6:DeleteFile 方法 删除一个指定的文件 DeleteFile filespec filespec-要删除文件的名字。Filespec 可以在最后的路径部件中包含通配符。
Sub 删除一年前的所有文件()
Dim File As Object
On Error Resume Next
With CreateObject('Scripting.filesystemobject') '引用FSO对象
For Each File In .GetFolder('D:\').Files '遍历D盘所有文件
'如果文件的创建时间大于1年,删除该文件
If Evaluate('DATEDIF(' & File.datecreated * 1 & ',now(),' & '''Y''' & ')') >= 1 Then .DeleteFile File
Next
End With
End Sub
联系客服