Se desideri sostituire la categoria colore di un elemento di Outlook, dovrai rimuovere quella originale man mano che viene assegnata una nuova categoria. Pertanto, in questo articolo, ti insegneremo come automatizzarlo tramite VBA.
Il motivo principale per cui utilizziamo le categorie di colori in Outlook è classificare e gestire meglio gli elementi di Outlook. Inoltre, Outlook ci consente di assegnare una o più categorie di colori a un articolo. Tuttavia, troppe categorie assegnate a un singolo articolo possono a volte ingombrare le regole di classificazione. Pertanto, molti utenti desiderano sostituire la categoria del colore invece di sovrapporre le categorie. Qui ti esporremo un modo efficace.

Sostituire la categoria colore di un elemento di Outlook
- All'inizio, avvia la tua applicazione Outlook.
- Quindi passa alla scheda "Sviluppatore" e fai clic sul pulsante "Visual Basic" o premi i tasti di scelta rapida "Alt + F11".
- Successivamente entrerai nella finestra "Microsoft Visual Basic for Applications".
- A questo punto, dovresti fare doppio clic sul progetto "ThisOutlookSession" sul lato sinistro per aprirlo.
- Successivamente, copia i seguenti codici VBA in questa finestra del progetto.
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
- Successivamente, dovresti assegnare un certificato digitale a questa nuova macro.
- Successivamente è necessario controllare le impostazioni delle macro di Outlook per assicurarsi che le macro firmate siano abilitate.
- Infine, è necessario riavviare Outlook per attivare il nuovo progetto VBA.
- D'ora in poi, ogni volta che assegni una nuova categoria ad un articolo, quella precedente verrà automaticamente rimossa.
Gestisci i problemi di Outlook fastidiosi
Poiché Outlook è soggetto a errori e corruzione, incontrerai vari problemi in Outlook. Pertanto, dovresti prendere precauzioni sufficienti. Ad esempio, è consigliabile eseguire backup regolari del file PST. Inoltre, dovresti procurarti un potente Correzione PST strumento, come DataNumen Outlook Repair.
Introduzione dell'autore:
Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui recuperare Sql Server e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com
