Как массово экспортировать вложения из электронных писем (которые являются электронными письмами) в другую папку в Outlook - PullRequest
0 голосов
/ 23 января 2019

Мне нужно извлечь вложения MSG из электронных писем в диапазоне и сохранить их в другой подпапке Outlook. В настоящее время это работает путем перетаскивания вложения в подпапку «Входящие», но есть ли более быстрый способ?

Я немного обыскал и нашел способы извлечь их в локальную папку, но мне нужно, чтобы они содержались в outlook.

Я ценю любую помощь и предложения.

Спасибо.

1 Ответ

0 голосов
/ 23 января 2019

Здесь есть две проблемы - во-первых, это доступ к вложенным вложениям сообщений без их сохранения сначала в виде файла MSG.Во-вторых, это импорт файлов MSG обратно - вы можете использовать Application.CreateItemFromTemplate, но элемент не будет отправлен.Вы можете использовать Namespace.OpenSharedItem, а затем использовать MailItem.Move, но это все еще кладезь.

Не так много вы можете сделать в одной только OOM.Расширенный MAPI будет работать, но это только C ++ или Delphi.Если вы используете опцию Redemption (я ее автор), вы можете использовать свойство EmbeddeedMsg, предоставляемое объектом Redemption RDOAttachment .Вы также можете использовать RDOMail . CopyTo и передать папку в качестве параметра для копирования вложенного вложения сообщения в папку:

Set Session = CreateObject("Redemption.RDOSession")
Session.MAPIOBJECT = Application.Session.MAPIOBJECT
set redItem = Session.GetMessageFromId(OutlookMessage.EntryID)
set redFolder = Session.GetFolderFromId(OutlookFolder.EntryID)
for each attach in redItem.Attachments
  if attach.Type = olEmbeddeditem Then
    attach.EmbeddedMsg.CopyTo OutlookFolder
  End If
next
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...