Страница 1 из 1

Outlook - получить текст письма в VBA

Добавлено: 28 дек 2010, 14:50
Хыиуду
Есть папка, в папке энное количество писем. В тексте писем встречаются email-адреса. Требуется - выцепить все эти адреса. Интересует, собственно, как в объектной модели получить текст очередного письма, остальное сам сделаю.

Re: Outlook - получить текст письма в VBA

Добавлено: 28 дек 2010, 17:24
Busine2009
Хыиуду
Outlook 2003 или 2007?

Re: Outlook - получить текст письма в VBA

Добавлено: 28 дек 2010, 18:15
Busine2009
Хыиуду
этот код для MS Outlook 2007. Если установлен 2003, то в коде надо вместо Folder использовать MAPIFolder.
Код собирает в переменную текст всех писем, находящихся в папке Входящие и содержащих символ "@":

Код: Выделить всё

Sub m_2()
Dim oNameSpace As Outlook.NameSpace
Dim oFolder As Outlook.Folder
Dim oItem As Object
Dim vАдреса As String
Set oNameSpace = Application.GetNamespace("MAPI")
Set oFolder = oNameSpace.GetDefaultFolder(olFolderInbox)
For Each oItem In oFolder.Items
    If InStr(oItem.Body, "@") > 0 Then
        vАдреса = vАдреса & vbCr & oItem.Body
    End If
Next
Debug.Print vАдреса
Set oNameSpace = Nothing
Set oFolder = Nothing
Set oItem = Nothing
End Sub