Если вы хотите заменить цветовую категорию элемента Outlook, вам необходимо удалить исходную категорию, так как будет назначена новая категория. Таким образом, в этой статье мы научим вас автоматизировать это с помощью VBA.
Основная причина, по которой мы используем цветовые категории в Outlook, заключается в том, чтобы лучше классифицировать элементы Outlook и управлять ими. Кроме того, Outlook позволяет нам назначать одну или несколько цветовых категорий одному элементу. Однако слишком много категорий, назначенных одному элементу, иногда могут загромождать ваши правила классификации. Поэтому многие пользователи хотят заменить цветовую категорию вместо наложения категорий. Здесь мы покажем вам эффективный способ.
Замена цветовой категории элемента Outlook
- В самом начале запустите приложение Outlook.
- Затем перейдите на вкладку «Разработчик» и нажмите кнопку «Visual Basic» или нажмите сочетание клавиш «Alt + F11».
- Далее вы войдете в окно «Microsoft Visual Basic для приложений».
- На этом этапе вы должны дважды щелкнуть проект «ThisOutlookSession» с левой стороны, чтобы открыть его.
- Затем скопируйте следующие коды VBA в это окно проекта.
Public WithEvents objExplorer As Outlook.Explorer
Public WithEvents objInspectors As Outlook.Inspectors
'Take Mailitem as an example
Public WithEvents objMail As Outlook.MailItem
Private Sub Application_Startup()
Set objExplorer = Outlook.Application.ActiveExplorer
Set objInspectors = Outlook.Application.Inspectors
End Sub
Private Sub objExplorer_Activate()
On Error Resume Next
Set objMail = objExplorer.Selection.Item(1)
End Sub
Private Sub objInspectors_NewInspector(ByVal Inspector As Inspector)
Set objMail = Inspector.CurrentItem
End Sub
Private Sub objMail_PropertyChange(ByVal Name As String)
Dim strSpecificCategory As String
Dim strCategories As String
Dim varArray As Variant
Dim i As Long
If Name = "Categories" Then
strCategories = objMail.Categories
varArray = Split(objMail.Categories, ",")
If UBound(varArray) >= 1 Then
'If want to get a confirmation before removing the original category
'Add the following lines
'Dim strPrompt As String
'Dim nResponse As Integer
'strPrompt = "Do you want to remove the original color category?"
'nResponse = MsgBox(strPrompt, vbQuestion + vbYesNo, "Color Category Assignment")
'If nResponse = vbYes Then
For i = 0 To UBound(varArray)
'Remove the previous color categories
varArray(1) = ""
'Rebuild the categories
objMail.Categories = Join(varArray, ",")
Exit Sub
Next i
'End If
End If
End If
End Sub
- После этого этому новому макросу следует назначить цифровой сертификат.
- Позже вам нужно проверить настройки макросов Outlook, чтобы убедиться, что подписанные макросы включены.
- В конце концов вы должны restar• Outlook, чтобы активировать новый проект VBA.
- Отныне каждый раз, когда вы назначаете элементу новую категорию, предыдущая будет автоматически удаляться.
Устранение проблем с Outlook
Поскольку Outlook подвержен ошибкам и повреждениям, вы столкнетесь с различными проблемами в своем Outlook. Таким образом, вы должны быть достаточно осторожны. Например, рекомендуется регулярно делать резервные копии вашего PST-файла. Кроме того, вам следует заполучить мощный PST-исправление инструмент, такой как DataNumen Outlook Repair.
Об авторе:
Ширли Чжан — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая оправляться Sql Server и программные продукты для ремонта Outlook. Для получения дополнительной информации посетите www.datanumen.com

