2015-07-14 4 views
1

У меня есть папка электронной почты в Outlook, и я хочу иметь возможность применять одно и то же действие к каждому письму в папке, однако я замечаю, что в настройках разработчика Outlook нет макросъемщика.Автоматизация действий в Outlook 2013

Процесс, который я сейчас предпринимаю, включает открытие каждого письма (так как оно содержит содержимое HTML, и я хочу распечатать его на изображении качества документа), выбрав «Просмотр в браузере» на вкладке «Действия» и печать из Интернета Проводник.

Есть ли способ выполнить итерацию этого действия в Outlook для каждого письма в папке? Я понятия не имею, как это сделать без какого-либо способа записи моих действий, чтобы получить представление о том, как обращаться к вещам в модуле Outlook ...

+0

Перспективы не имеет диктофон. Вы должны сами ввести VBA (или скопировать его из Интернета). –

ответ

1

Вам нужно будет немного узнать о объекте Outlook модель Getting Started with VBA in Outlook 2010. Вот немного кода, чтобы вы начали. Этот макрос цикл будет по всем элементам в папке и проверьте адрес электронной почты получателя и установить флаг

Sub SetFlagIcon() 
    Dim mpfInbox As Outlook.Folder 
    Dim obj As Outlook.MailItem 
    Dim i As Integer 
    Set mpfInbox = Application.GetNamespace("MAPI").Folders("Jeanno").Folders("Sent Mail") 
    ' Loop all items in the Inbox\Test Folder 
    For i = 1 To mpfInbox.Items.Count 
     If mpfInbox.Items(i).Class = olMail Then 
      Set obj = mpfInbox.Items.Item(i) 
      For Each Recipient In obj.Recipients 
       If Recipient.Address = "[email protected]" Then 
        'Set the yellow flag icon 
        obj.FlagIcon = olYellowFlagIcon 
        obj.Save 
       End If 
      Next Recipient 
     End If 
    Next 
End Sub 
0

Перспективы не имеют записи макросов, но вы можете использовать макросы, записанные в Слове Поскольку Outlook, используйте редактор Microsoft Word как Email, который позволяет разработчикам использовать мощную библиотеку Word для редактирования содержимого электронных писем и других элементов.

Вы можете записать макрос в Word и использовать тот же код в проекте Outlook VBA, просто установите ссылку на «Microsoft Word Object Library», чтобы Outlook мог распознавать объекты, используемые Word.

Пример

Option Explicit 
Public Sub UseWord() 
    Dim Ins As Outlook.Inspector 
    Dim wDoc As Word.Document 
    Dim Word As Word.Application 
    Dim Selection As Word.Selection 

    Set Ins = Application.ActiveInspector 
    Set wDoc = Ins.WordEditor 
    Set Word = wDoc.Application 
    Set Selection = Word.Selection 

    'insert here your macro from word 

End Sub 

Здесь полезно Link Outlook 2010

Смежные вопросы