Če želite zamenjati barvno kategorijo Outlookovega elementa, boste morali odstraniti prvotno, ko bo dodeljena nova kategorija. Zato vas bomo v tem članku naučili, kako to avtomatizirati prek VBA.
Glavni razlog, zakaj uporabljamo barvne kategorije v Outlooku, je boljše razvrščanje in upravljanje vaših Outlookovih elementov. Poleg tega nam Outlook dovoljuje, da enemu elementu dodelimo eno ali več barvnih kategorij. Vendar lahko preveč kategorij, dodeljenih enemu elementu, včasih zamoti vaša pravila razvrščanja. Zato mnogi uporabniki želijo zamenjati barvno kategorijo namesto prekrivnih kategorij. Tukaj vam bomo predstavili učinkovit način.

Zamenjajte barvno kategorijo Outlookovega elementa
- Na začetku zaženite aplikacijo Outlook.
- Nato preklopite na zavihek »Razvijalec« in kliknite gumb »Visual Basic« ali pritisnite bližnjične tipke »Alt + F11«.
- Nato boste vstopili v okno »Microsoft Visual Basic za aplikacije«.
- Na tej točki bi morali dvakrat klikniti projekt »ThisOutlookSession« na levi strani, da ga odprete.
- Nato v to okno projekta kopirajte naslednje kode 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
- Nato temu novemu makru dodelite digitalno potrdilo.
- Pozneje morate preveriti nastavitve Outlookovih makrov, da zagotovite, da so podpisani makri omogočeni.
- Sčasoma morate znova zagnati Outlook, da aktivirate nov projekt VBA.
- Odslej bo vsakič, ko elementu dodelite novo kategorijo, prejšnja samodejno odstranjena.
Rešite Nettlesome Outlook vprašanja
Ker je Outlook nagnjen k napakam in korupciji, boste v Outlooku naleteli na različne težave. Zato morate biti dovolj previdni. Priporočljivo je na primer, da redno izdelujete varnostne kopije datoteke PST. Poleg tega bi morali imeti močan PST popravek orodje, kot je DataNumen Outlook Repair.
Uvod avtorja:
Shirley Zhang je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z opomore Sql Server in obeti za popravilo programskih izdelkov. Za več informacij obiščite www.datanumen.com
