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

Получите предупреждение, если слишком много непрочитанных писем
- К start с, запустите программу Outlook, как обычно.
- Далее в главном окне Outlook нажимаем клавиши «Alt+F11».
- Затем вы попадете в окно «Microsoft Visual Basic для приложений», в котором вам нужно найти и открыть проект «ThisOutlookSession».
- Впоследствии вы должны скопировать следующий код VBA в этот проект.
Private objInbox As Outlook.Folder
Private WithEvents objItems As Outlook.Items
Private lUnreadItemCount As Long
Private Sub Application_Startup()
Set objInbox = Application.Session.GetDefaultFolder(olFolderInbox)
Set objItems = objInbox.Items
lUnreadItemCount = 0
Call CountUnreadEmails(objInbox, lUnreadItemCount)
'If there are more than 10 unread emails
If lUnreadItemCount > 10 Then
MsgBox "Too many unread emails in Inbox!" & vbCr & "Please deal with them as soon as possible!", vbExclamation + vbOKOnly, "Check Unread Emails"
End If
End Sub
Private Sub objItems_ItemAdd(ByVal Item As Object)
Call CountUnreadEmails(objInbox, lUnreadItemCount)
lUnreadItemCount = 0
If lUnreadItemCount > 10 Then
MsgBox "Too many unread emails!" & vbCr & "Please deal with them as soon as possible!", vbExclamation + vbOKOnly, "Check Unread Emails"
End If
End Sub
Private Sub CountUnreadEmails(ByVal objFolder As Outlook.Folder, ByRef lCount As Long)
Dim objUnreadItems As Outlook.Items
Dim objSubfolder As Outlook.Folder
Set objUnreadItems = objFolder.Items.Restrict("[Unread] = True")
lCount = objUnreadItems.count + lCount
'Process all subfolders under Inbox recursively
If objFolder.Folders.count > 0 Then
For Each objSubfolder In objFolder.Folders
Call CountUnreadEmails(objSubfolder, lCount)
Next
End If
End Sub
- После этого следует подписать этот код.
- Позже выйдите из текущего окна и измените настройки макроса Outlook, чтобы включить макросы с цифровой подписью.
- Наконец, вы можете restart ваш Outlook, чтобы активировать этот новый макрос.
- Отныне каждый раз, когда выtart Outlook и новая электронная почта поступает в ваш почтовый ящик, Outlook автоматически проверяет количество непрочитанных электронных писем в папке «Входящие» и ее подпапках.
- Если число превышает предопределенный лимит, Outlook предупредит вас, как показано на следующем снимке экрана:
Получить данные Outlook после внезапных сбоев
Outlook не может полностью избавиться от ошибок. А ошибки монтирования могут привести к вылетам без всяких подсказок. Серьезные сбои могут мгновенно повредить файл данных Outlook. Поэтому вам необходимо принять достаточные меры предосторожности, такие как регулярное резервное копирование данных и получение мощного внешнего инструмента восстановления, такого как DataNumen Outlook Repair. Это может помочь вам восстановить PST файл с легкостью.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая исправить мдф и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

