Если вы хотите пакетно удалить все пустые подпапки в Outlook, вы можете использовать метод, представленный в этой статье. Он научит вас, как использовать Outlook VBA для пакетного удаления подпапок.
Для более удобной классификации и управления электронной почтой Outlook вы, вероятно, создали множество пользовательских подпапок в стандартных папках, будь то «Входящие», «Отправленные» или «Черновики» и т. д. Однако иногда вы можете обнаружить, что некоторые подпапки используются нечасто. Поэтому большую часть времени они пустуют, не содержат никаких файлов. В этом случае вам следует удалить все пустые подпапки.

Как правило, вы можете щелкнуть правой кнопкой мыши такую подпапку, а затем выбрать «Удалить папку» в контекстном меню. Тем не менее, если пустых подпапок много, удалять по одной будет довольно хлопотно. Поэтому вы должны долго ждать подсказки, чтобы удалить их все оптом. Хотя Outlook не предоставляет такой функции, вы все равно можете использовать код VBA, чтобы реализовать ее в кратчайшие сроки. Далее мы покажем вам подробные шаги и коды.
Пакетное удаление всех пустых подпапок
- Для начала запустите программу Outlook.
- Затем нажмите клавиши «Alt + F11» в главном окне Outlook.
- Далее в окне «Microsoft Visual Basic для приложений» откройте неиспользуемый модуль.
- Затем скопируйте и вставьте в этот модуль следующие коды VBA.
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
- После этого измените уровень безопасности макросов Outlook на низкий.
- В конце концов вы можете запустить этот макрос, нажав кнопку «F5» в текущем окне макроса.
- Сразу же вы обнаружите, что все пустые подпапки будут удалены.
Получить поврежденные данные Outlook PST
Из-за того, что Outlook подвержен ошибкам и повреждениям, вам следует уделить внимание защите вашего файла Outlook PST. Например, вам следует периодически создавать резервные копии данных PST. Более того, чтобы восстановить Outlook проблемы как можно скорее, вы должны подготовить авторитетный и мощный инструмент исправления, такой как DataNumen Outlook Repair.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая SQL Server коррупция и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com
