一些用戶希望Outlook退出Outlook時可以自動清空“垃圾郵件”文件夾。 儘管Outlook中沒有這種功能,但仍可以通過VBA實現。
也許您已經知道Outlook具有內置功能,當您退出Outlook時,該功能能夠自動清空“已刪除郵件”文件夾。 同樣,您可能希望獲得類似的功能,即退出Outlook時自動清空“垃圾郵件”文件夾。 儘管Outlook不提供這種功能,但是您仍然可以使用VBA生成它。 在這裡,我們將指導您詳細實現它。

退出Outlook時自動清空“垃圾郵件”文件夾
- 首先,啟動 Outlook 程式。
- 然後按“ Alt + F11”鍵按鈕訪問Outlook VBA編輯器。
- 在新興的“ Microsoft Visual Basic for Applications”窗口中,您應該找到並打開“ ThisOutlookSession”項目。
- 隨後,您需要將以下VBA代碼複製到該項目中。
Private Sub Application_Quit()
Dim objJunkFolder As Outlook.Folder
Dim i As Long
Dim objMail As Outlook.MailItem
Dim objDeletedFolder As Outlook.Folder
Dim objItem As Object
Dim objProperty As Outlook.UserProperty
Set objJunkFolder = Outlook.Application.Session.GetDefaultFolder(olFolderJunk)
For i = objJunkFolder.Items.count To 1 Step -1
If objJunkFolder.Items(i).Class = olMail Then
Set objMail = objJunkFolder.Items(i)
'Add the specific property to each junk email
objMail.UserProperties.Add "Delete", olText
objMail.Save
'Delete them
objMail.Delete
End If
Next
Set objDeletedFolder = Application.Session.GetDefaultFolder(olFolderDeletedItems)
For Each objItem In objDeletedFolder.Items
'Find out the junk emails in the "Deleted Items" folder
Set objProperty = objItem.UserProperties.Find("Delete")
If TypeName(objProperty) <> "Nothing" Then
'Permanently delete them
objItem.Delete
End If
Next
'Prompt You
MsgBox Chr(34) & "Junk Email" & Chr(34) & " Folder Emptied!", vbExclamation + vbOKOnly
End Sub
- 之後,您需要為該新宏分配一個數字證書。
- 首先點擊“工具”按鈕。
- 然後從下拉菜單中選擇“數字簽名”選項。
- 接下來,按照屏幕上的說明完成操作。
- 以後更改Outlook宏設置以啟用已簽名的VBA項目。
- 最後,重新啟動 Outlook 以啟動此新巨集。
- 從現在開始,每次退出Outlook時,“垃圾郵件”文件夾都會自動清空。 您將收到類似下圖的消息:
防止Outlook崩潰的有效措施
如果您使用Outlook已有數十年,那麼您肯定曾經遇到過各種錯誤。 另外,隨著時間的流逝,您的Outlook往往會崩潰,並且Outlook數據文件很容易損壞。 因此,為了防止Outlook數據丟失,最好採取一些預防措施,包括備份PST文件,使用有效的Outlook修復工具,例如 DataNumen Outlook Repair。 強烈推薦它,因為它的專業知識 PST修復.
作者簡介:
Shirley Zhang是的數據恢復專家 DataNumen,Inc.是數據恢復技術的全球領導者,包括 mdf修復 和Outlook修復軟件產品。 欲了解更多信息,請訪問 萬維網。datanumen.COM

