Отсканируйте почтовый ящик не по умолчанию для электронной почты?

Я использую следующий код vba, который проверяет любые электронные письма с определенным заголовком темы.

Проблема в том, что он проверяет мою папку входящих почтовых ящиков по умолчанию, когда мне это нужно, чтобы проверить почтовый ящик моей другой учетной записи электронной почты [email protected]

Может кто-нибудь, пожалуйста, покажите мне, как я это сделаю? заранее спасибо

Sub Macro1() Set olApp = CreateObject("Outlook.Application") Dim olNs As Outlook.Namespace Dim Fldr As Outlook.MAPIFolder Dim myItem As Outlook.MailItem Dim myAttachment As Outlook.Attachment Dim I As Long Dim olMail As Variant Set olApp = New Outlook.Application Set olNs = olApp.GetNamespace("MAPI") Set Fldr = olNs.GetDefaultFolder(olFolderInbox) Set myTasks = Fldr.Items Set olMail = myTasks.Find("[Subject] = ""New Supplier Request: Ticket""") If Not (olMail Is Nothing) Then For Each myItem In myTasks If myItem.Attachments.Count <> 0 Then For Each myAttachment In myItem.Attachments If InStr(myAttachment.DisplayName, ".txt") Then I = I + 1 myAttachment.SaveAsFile "\\uksh000-file06\Purchasing\NS\Unactioned\" & myAttachment End If Next End If Next For Each myItem In myTasks myItem.Delete Next Call Macro2 Else MsgBox "There Are No New Supplier Requests." End If End Sub 

Структура папок Outlook:

 [email protected] Inbox Drafts Sent [email protected] Inbox Drafts Sent 

Вы должны использовать следующее, считая, что папка, которую вы хотите, находится на том же уровне в иерархии папок

 Set Items = Session.GetDefaultFolder(olFolderCalendar).Parent.Folders("YouFolderName").Items 

Подробнее см. Здесь … http://www.slipstick.com/developer/working-vba-nondefault-outlook-folders/


Вы пробовали следующую функцию из приведенной выше ссылки …

 Function GetFolderPath(ByVal FolderPath As String) As Outlook.Folder Dim oFolder As Outlook.Folder Dim FoldersArray As Variant Dim i As Integer On Error GoTo GetFolderPath_Error If Left(FolderPath, 2) = "\\" Then FolderPath = Right(FolderPath, Len(FolderPath) - 2) End If 'Convert folderpath to array FoldersArray = Split(FolderPath, "\") Set oFolder = Application.Session.Folders.item(FoldersArray(0)) If Not oFolder Is Nothing Then For i = 1 To UBound(FoldersArray, 1) Dim SubFolders As Outlook.Folders Set SubFolders = oFolder.Folders Set oFolder = SubFolders.item(FoldersArray(i)) If oFolder Is Nothing Then Set GetFolderPath = Nothing End If Next End If 'Return the oFolder Set GetFolderPath = oFolder Exit Function GetFolderPath_Error: Set GetFolderPath = Nothing Exit Function End Function 

Возможно, вам понадобится сначала использовать технику, чтобы узнать фактическое имя папки … https://msdn.microsoft.com/en-us/library/office/ff184607.aspx


На изображении ниже папки «Черновики», «Клиенты» и «Исходящие» находятся на одном уровне (они имеют одну и ту же родительскую папку james @ … com), но папка ChildFolder не является (это родительский элемент «Черновики»).

введите описание изображения здесь

Вы должны просто указать имя своего второго почтового ящика как папку.

 Set Fldr = olNs.Folders("My 2nd mailbox").Folders("Sub Folder") 

Если вы хотите, чтобы основной почтовый ящик второй учетной записи, вы указываете это как подпапку учетной записи.

 Set Fldr = olNs.Folders("My 2nd Inbox").Folders("Inbox") 

Обратите внимание, что это имя используемого почтового ящика, а не адрес электронной почты. Дайте мне знать, как вы поживаете.

  • Как создать соединение / ссылку между Excel и электронной почтой Outlook?
  • Отправка с дополнительной учетной записи электронной почты в Outlook
  • Добавить изображение в тело письма и подпись в Outlook через Excel-Vba
  • Извлечь данные из электронной почты Outlook в Excel
  • Текстовое поле подсказки, которое будет сохранять форматирование Outlook
  • Excel: ошибка во время выполнения '-2147319779 (8002801d)':
  • Excel VBA Отправить Email
  • Outlook для Excel VBA для перезаписывания предыдущих данных
  • Не удалось получить Excel для создания электронной почты
  • Вставить Word.Document в тело электронной почты?
  • Экспорт электронной почты из папок Outlook в Excel. Проблема с кодированием
  • Interesting Posts

    Есть ли функция Excel для поиска комбинации чисел

    Excel IF Формула, изменяющая одну ячейку, имеет данные, а другая ячейка имеет определенное значение

    как объединить данные на основе строк и столбцов?

    Копирование данных с одного листа на другой в зависимости от значения поля

    Удаление строк по нескольким листам в Excel, если значение ячейки равно «пусто»,

    Могу ли я использовать ту же форму для ввода разных ячеек

    Функция excel addin, работающая на моем компьютере, но добавляющая файл пути на другом компьютере

    VBA возвращает массив

    Импорт данных из Excel / CSV в SQL Server

    Попытка копирования и вставки с помощью VBA с использованием диапазона, созданного значением ячейки

    Как сохранить заголовки строк и столбцов при применении операции с помощью Matlab

    Как создать Filtered list, если значения соответствуют формулам?

    Как правильно загрузить файл Excel с помощью Angular2

    Цепочные обещания в Office.js с Excel.run ()

    Выполнить макрос события после выбора проверки данных

    Давайте будем гением компьютера.