If you want to batch delete all empty subfolders in your Outlook, you can utilize the method introduced in this article. It’ll teach you how to use Outlook VBA to delete the subfolders in batches.
So as to better classify and manage your Outlook emails, you must have created a lot of custom subfolders under the default folders, no matter Inbox, Sent Items or Drafts folder, etc. However, sometimes, you may find that some subfolders are not frequently used. Hence, most of time, they are empty without any items. In this case, you will hope to delete all of the empty subfolders.
In general, you can right click on such a subfolder and then choose “Delete Folder” from the right clicking menu. Nevertheless, if there are many empty subfolders, deleting one by one will be quite troublesome. Therefore, you must long for a tip to delete all of them in bulk. Although Outlook doesn’t provide such a feature, you still can make use of VBA code to realize it in quick time. In the followings, we’ll show you the elaborate steps and codes.
Batch Delete All Empty Subfolders
- In the first place, start your Outlook program.
- Then press “Alt + F11” key buttons in the main Outlook window.
- Next in the “Microsoft Visual Basic for Applications” window, open a module that is not in use.
- Subsequently, copy and paste the following VBA codes into this module.
Public Sub GetAllSubfolders() Dim objFolders As Outlook.Folders Dim objFolder As Outlook.Folder Dim i As Long On Error Resume Next 'Change "Personal" to the name of your Outlook data file Set objFolders = Outlook.Application.Session.Folders("Personal").Folders For Each objFolder In objFolders If objFolder.Folders.Count > 0 Then For i = objFolder.Folders.Count To 1 Step -1 Call DeleteEmptyFolder(objFolder.Folders(i)) Next End If Next MsgBox ("Completed!") End Sub Public Sub DeleteEmptyFolder(objCurrentFolder As Outlook.Folder) Dim objSubFolder As Outlook.Folder Dim n As Long If objCurrentFolder.Items.Count = 0 Then objCurrentFolder.Delete End If 'Process the subfolders recursively If objCurrentFolder.Folders.Count > 0 Then For n = objCurrentFolder.Folders.Count To 1 Step -1 Set objSubFolder = objCurrentFolder.Folders(n) Call DeleteEmptyFolder(objSubFolder) Next End If End Sub
- After that, change your Outlook macro security level to low.
- Eventually you can run this macro by pressing “F5” key button in the current macro window.
- At once, you will discover that all the empty subfolders will be deleted.
Retrieve Corrupted Outlook PST Data
Due to the fact that Outlook is susceptible to error and damage, you should pay attention to safeguarding your Outlook PST file. For instance, you should back up your PST data periodically. Moreover, in order to repair Outlook issues as soon as possible, you have to prepare a reputable and powerful fix tool like DataNumen Outlook Repair.
Shirley Zhang is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including SQL Server corruption and outlook repair software products. For more information visit www.datanumen.com