Я работаю для макросов VBA в Outlook 2010, чтобы фильтровать и классифицировать входящие сообщения в разных папках. Правило упоминается в целевом объекте. Когда речь идет о реализации и тестировании, вместо успешной фильтрации он выдает окна с сообщениями об ошибках. Подскажите, пожалуйста, в каком разделе по умолчанию вызов Application_NewMail
будет продолжен?
Цель:
извлечение слов в [этом скобке]
Тема: [ABC]
-> создать папку входящих сообщений ABC
Тема: [CMX]
-> создать папку входящих сообщений ABC
Тема: CMX
-> создать папку входящих сообщений CMX
Тема: INC000000156156
-> создать папку входящихпапка INC
и подпапка INC000000156156
Язык программирования: VBA Macro
Версия Outlook: 2010
Вот мой код, и я понятия не имеюо том, как создавать папки, если они пустые, и назначать электронную почту для папки:
Private Sub Application_NewMail()
Dim olFld As Outlook.MAPIFolder
Set olFld = Outlook.Session.GetDefaultFolder(olFolderInbox)
olFld.Items.Sort "[ReceivedTime]", False
Dim olMail As Outlook.MailItem
Set olMail = olFld.Items.GetFirst
MyNiftyFilter olMail
End Sub
Private Sub MyNiftyFilter(Item As Outlook.MailItem)
Debug.Print Item
Debug.Print Item.Subject
Dim Matches As Variant
Dim RegExp As New VBScript_RegExp_55.RegExp
Dim Pattern As String
Dim Email_Subject As String
Pattern = "(([\w-\s]*)\s*)"
Email_Subject = Item.Subject
With RegExp
.Global = False
.Pattern = Pattern
.IgnoreCase = True
Set Matches = .Execute(Email_Subject)
End With
If Matches.Count > 0 Then
End If
Set RegExp = Nothing
Set Matches = Nothing
Set Item = Nothing
End Sub