Использование VBA для чтения новой электронной почты Outlook?
У меня есть следующий код, который сообщает, когда новое сообщение прибыло!
Private Sub Application_NewMail()
MsgBox "New Mail Has Arrived"
End Sub
Как я могу прочитать тело, тема этой почты? Есть ли хорошие учебники для программирования outlook?
нашел в MSDN учебник, который был полезен, но был общим обзором.
1 ответов
вам понадобится что-то вроде этого:
Private WithEvents myOlItems As Outlook.Items
Private Sub Application_Startup()
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set myOlItems = objNS.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub myOlItems_ItemAdd(ByVal item As Object)
On Error GoTo ErrorHandler
Dim Msg As Outlook.MailItem
If TypeName(item) = "MailItem" Then
Set Msg = item
MsgBox Msg.Subject
MsgBox Msg.Body
End If
ProgramExit:
Exit Sub
ErrorHandler:
MsgBox Err.Number & " - " & Err.Description
Resume ProgramExit
End Sub
вставьте код в ThisOutlookSession и перезапустите Outlook. Когда сообщение входит в локальный почтовый ящик по умолчанию, вы увидите всплывающее окно с темой и телом.