[英]How to change e-mail category in MS Outlook 2013 with VBA?
我嘗試制作在 VBA 中完成一些操作后自動更改電子郵件類別的宏。
我創建了一些看起來不錯的代碼,但它存在並不總是有效的問題 - 有時類別不會改變,看起來它是錯誤的:
Dim myolApp As Outlook.Application
Dim olFolder As Outlook.MAPIFolder
Dim ns As Outlook.NameSpace
Set ns = Outlook.GetNamespace("MAPI")
Set myolApp = CreateObject("Outlook.Application")
Set olFolder = ns.GetDefaultFolder(olFolderInbox)
Set olFolder = myolApp.ActiveExplorer.CurrentFolder
Dim itm As Object
Dim mailcattable As Variant
Dim kategoria As String
For Each itm In olFolder.Items
For b = 0 To UBound(mailcattable)
If mailcattable(b) = "ABCD" Then
mailcattable(b) = "After ABCD"
kategoria = Join(mailcattable, "; ")
itm.Categories = kategoria
End If
Next
Next
你能告訴我如何解決嗎?
您永遠不會保存該項目。 為每個項目重置kategoria
變量也是一個好主意。
Dim bModified As Boolean
For Each itm In olFolder.Items
kategoria = ""
bModified = false
For b = 0 To UBound(mailcattable)
If mailcattable(b) = "ABCD" Then
mailcattable(b) = "After ABCD"
kategoria = Join(mailcattable, "; ")
itm.Categories = kategoria
bModified = true
End If
Next
if bModified Then
itm.Save
End If
Next
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.