Я использую следующий код для создания вывода, показывающего, сколько писем было в определенной папке в день. Все это прекрасно работает ... Мой вопрос находится в разделе с XXXXX, как я могу ссылаться на каждый элемент почты, чтобы я мог делать регулярное выражение для шаблона слов? Конечная цель - выяснить, сколько писем содержало ключевое слово в данный день. Нужный выход что-то вроде этого:внешний вид vba regex на каждый элемент почты в массиве
,, 2015-01-01,15,2,5 2015-01-01,23,22,0 ... ...
Я в порядке, чтобы выяснить код определения количества писем на основе ключевого слова, просто не уверен, как ссылаться на сообщения электронной почты на основе кода, как сегодня ...
Спасибо за ваш совет.
Sub HowManyEmails()
Dim objOutlook As Object, objnSpace As Object, objFolder As MAPIFolder
Dim EmailCount As Integer
Set objOutlook = CreateObject("Outlook.Application")
Set objnSpace = objOutlook.GetNamespace("MAPI")
On Error Resume Next
Set objFolder = objnSpace.Folders("Personal Folders").Folders("Inbox").Folders("jobs.keep")
If Err.Number <> 0 Then
Err.Clear
MsgBox "No such folder."
Exit Sub
End If
EmailCount = objFolder.Items.Count
MsgBox "Number of emails in the folder: " & EmailCount, , "email count"
Dim dateStr As String
Dim myItems As Outlook.Items
Dim dict As Object
Dim msg As String
Set dict = CreateObject("Scripting.Dictionary")
Set myItems = objFolder.Items
myItems.SetColumns ("SentOn")
' Determine date of each message:
For Each myItem In myItems
xxxxxxx
xxxxxxx
xxxxxxx
dateStr = GetDate(myItem.SentOn)
If Not dict.Exists(dateStr) Then
dict(dateStr) = 0
End If
dict(dateStr) = CLng(dict(dateStr)) + 1
Next myItem
«Записать вывод в файл Dim ENVIRO As String ENVIRO = CStr (Environ ("USERPROFILE")) FILEPATH = ENVIRO & "\ Desktop \ emails.csv" Открыть FILEPATH для вывода В 1 MSG = "" Для каждого вывода в dict.Keys тзд = тзд & Ø & "" & Dict (о) & vbCrLf 'MsgBox тзд Следующая Печать # 1, сообщ Закрыть # 1 ' Write вывод в файл
Set objFolder = Nothing
Set objnSpace = Nothing
Set objOutlook = Nothing
End Sub
Функция GetDate (дт As Date) As String GetDate = Год (дт) & "-" & месяц (дт) & "-" & день (дт) End Function