Я пытаюсь прочитать тему сообщения электронной почты и сохранить ее как переменную.
В целях тестирования я установил его для использования в качестве имени файла для текстового файла.
Мой код возвращает пустую строку.
- Я отправляю электронное письмо на адрес адрес электронной почты, код которого указан ниже:
ThisOutlookSession
- Тема сообщения
Topic (923832)
- Код выполняется без ошибок
- Имя текстового файла пусто
Почему str = oMail.Subject
не может ничего прочитать?
Вот мой код: (On Error Resume Next
теперь удалено.)
Option Explicit
Private WithEvents olInboxItems As Items
Private Sub Application_Startup()
Dim objNS As NameSpace
Set objNS = Application.Session
' instantiate objects declared WithEvents
Set olInboxItems = objNS.GetDefaultFolder(olFolderInbox).Items
Set objNS = Nothing
End Sub
Private Sub olInboxItems_ItemAdd(ByVal Item As Object)
'On Error Resume Next
Dim oMail As Outlook.MailItem
Dim str As String
Dim openPos As Integer
Dim closePos As Integer
Dim midBit As String
Dim strFolderPath
Dim fso As Object
Dim oFile As Object
Set oFile = fso.CreateTextFile(strFolderPath & midBit & ".txt")
Set fso = CreateObject("Scripting.FileSystemObject")
strFolderPath = "C:\temp\Attachments\"
str = oMail.Subject
openPos = InStr(str, "(")
closePos = InStr(str, ")")
If oMail.SenderEmailAddress = "username@mail.com" Then
If Item.Attachments.Count > 0 Then
midBit = Mid(str, openPos + 1, closePos - openPos - 1)
oFile.WriteLine midBit
oFile.Close
End If
End If
Set fso = Nothing
Set oFile = Nothing
End Sub