对于经常开票的会计朋友来说,处理合同、发票,Windows“下载”文件夹简直就是数字垃圾场。每天各种 PDF 自动往里堆,不到一周就乱成一锅粥。更麻烦的是:很多文件只是当天用一下,过几天就完全没用了。 如果你也有这样的困扰,那今天这篇文章会让你眼前一亮。我给你准备了一段非常实用的 Excel VBA 代码——自动删除下载目录中“不是今天创建”的所有 PDF 文件。你只保留当天需要的文件,其余的自动清理。
具体代码如下
Sub 删除PDF文件()
Dim downloadsPath As String
Dim fileName As String
Dim filePath As String
Dim fileDate As Date
' 获取当前用户的下载目录
downloadsPath = Environ("USERPROFILE") & "\Downloads\"
' 遍历所有 PDF 文件
fileName = Dir(downloadsPath & "*.pdf", vbNormal)
Do While fileName <> ""
filePath = downloadsPath & fileName
' 获取文件创建日期
fileDate = FileDateTime(filePath)
' 如果创建日期不是今天,则删除
If Int(fileDate) <> Date Then
Kill filePath
End If
fileName = Dir
Loop
MsgBox "删除完成!", vbInformation
End Sub
代码逻辑解释(让你真正理解)
Environ("USERPROFILE") & "\Downloads\" 自动获取当前 Windows 用户的下载目录。
Dir(downloadsPath & "*.pdf") 只扫描 PDF 文件。
FileDateTime(filePath) 获取文件创建时间。
If Int(fileDate) <> Date Then Kill filePath 只删除“不是今天创建”的文件。
很多人觉得 VBA 是“程序员的东西”,但其实它是最容易上手的自动化工具之一。你不需要懂编程,只需要复制粘贴,就能让电脑替你干活。