Om du vill ersätta färgkategorin för ett Outlook-objekt måste du ta bort den ursprungliga när en ny kategori tilldelas. Således kommer vi i den här artikeln att lära dig hur du automatiserar detta via VBA.
Den främsta anledningen till att vi använder färgkategorier i Outlook är att bättre klassificera och hantera dina Outlook-objekt. Dessutom tillåter Outlook oss att tilldela en eller flera färgkategorier till ett objekt. Men för många kategorier som tilldelats ett enda objekt kan ibland störa dina klassificeringsregler. Därför vill många användare ersätta färgkategorin istället för att lägga över kategorier. Här kommer vi att exponera ett effektivt sätt för dig.

Byt ut färgkategorin för ett Outlook-objekt
- Starta din Outlook-applikation redan från början.
- Byt sedan till fliken "Developer" och klicka på "Visual Basic" -knappen eller tryck på "Alt + F11" genvägar.
- Därefter öppnar du fönstret "Microsoft Visual Basic for Applications".
- Vid denna punkt bör du dubbelklicka på projektet “ThisOutlookSession” på vänster sida för att öppna det.
- Kopiera därefter följande VBA-koder till detta projektfönster.
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
- Därefter bör du tilldela ett digitalt certifikat till detta nya makro.
- Senare måste du kontrollera dina Outlook-makroinställningar för att säkerställa att signerade makron är aktiverade.
- Så småningom bör du starta om Outlook för att aktivera det nya VBA-projektet.
- Från och med nu, varje gång du tilldelar en ny kategori till ett objekt, tas den tidigare bort automatiskt.
Hantera Nettlesome Outlook-problem
Eftersom Outlook är utsatt för fel och korruption kommer du att stöta på olika problem i din Outlook. Därför bör du vara tillräckligt försiktig. Till exempel är det tillrådligt att regelbundet säkerhetskopiera din PST-fil. Dessutom borde du få tag i en kraftfull PST-fix verktyg, såsom DataNumen Outlook Repair.
Författarintroduktion:
Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive återhämta Sql Server och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com
