Excel это не сложно
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
29.03.2024, 16:38:56

Войти
Интересные и полезные статьи по работе с Excel и VBA можно найти в разделе ХИТРОСТИ
33 233 Сообщений в 5 454 Тем от 6 753 Пользователей
Последний пользователь: malanik777
*
Перейти на сайт Хитрости Надстройка MulTEx Обучающие тренинги Наша группа ВКонтакте
Правила форума Начало Помощь Поиск Календарь Войти Регистрация Выйти
+  Excel это не сложно
|-+  Основные форумы
| |-+  Вопросы по Outlook и VBA
| | |-+  Как обратиться к текущей папке и к текущему сообщению?
Страниц: [1]   Вниз
Печать
Автор Тема: Как обратиться к текущей папке и к текущему сообщению?  (Прочитано 9507 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Alex_Gur
Старожил
****

Репутация: +11/-0
Офлайн Офлайн

Сообщений: 278


Просмотр профиля
« : 14.08.2015, 10:51:19 »

Как в макросе Outlook обратиться к текущей (выделенной, активной) папке и к текущему (выделенному, активному) сообщению?
Например, чтобы выгрузить текущее сообщение или все сообщения из текущей папки.

Записан

Мы заинтересованы не только решить ваши задачи, но и помочь вам научиться решать их самостоятельно.
"Дай человеку рыбу, и он будет сыт весь день. Научи человека ловить рыбу, и он будет сыт всю жизнь" Улыбка
Alex_Gur
Старожил
****

Репутация: +11/-0
Офлайн Офлайн

Сообщений: 278


Просмотр профиля
« Ответ #1 : 14.08.2015, 11:34:28 »

Для текущей папки нашел решение в интернете:

Код: (vb)
Dim MyCurrentFolder As Outlook.MAPIFolder
Set MyCurrentFolder = Application.ActiveExplorer.CurrentFolder


Остался еще вопрос, как обратиться к текущему сообщению?
Записан

Мы заинтересованы не только решить ваши задачи, но и помочь вам научиться решать их самостоятельно.
"Дай человеку рыбу, и он будет сыт весь день. Научи человека ловить рыбу, и он будет сыт всю жизнь" Улыбка
Alex_Gur
Старожил
****

Репутация: +11/-0
Офлайн Офлайн

Сообщений: 278


Просмотр профиля
« Ответ #2 : 14.08.2015, 11:53:44 »

Нашел решение и для активного сообщения:

Код: (vb)
Dim MailItem1 As MailItem
Set MailItem1 = Application.ActiveExplorer.Selection.Item(1)


Буду признателен, если вы еще подскажете, как проверить, является ли полученный объект Application.ActiveExplorer.Selection.Item(1) сообщением?
Записан

Мы заинтересованы не только решить ваши задачи, но и помочь вам научиться решать их самостоятельно.
"Дай человеку рыбу, и он будет сыт весь день. Научи человека ловить рыбу, и он будет сыт всю жизнь" Улыбка
Alex_Gur
Старожил
****

Репутация: +11/-0
Офлайн Офлайн

Сообщений: 278


Просмотр профиля
« Ответ #3 : 14.08.2015, 12:12:03 »

Проверка, является ли полученный активный объект сообщением:

Код: (vb)
 Sub IsItMailItem1()
    Dim MailItem1 As MailItem
    Dim myinspector As Outlook.Inspector
    Dim Object1 As Object
    Set Object1 = Application.ActiveExplorer.Selection.Item(1)
    If Object1.Class = olMail Then
        MsgBox "Это сообщение"
    Else: MsgBox "Это не сообщение"
    End If
 End Sub


Большое спасибо. Проблема решена, и тема закрыта.
Записан

Мы заинтересованы не только решить ваши задачи, но и помочь вам научиться решать их самостоятельно.
"Дай человеку рыбу, и он будет сыт весь день. Научи человека ловить рыбу, и он будет сыт всю жизнь" Улыбка
Страниц: [1]   Вверх
Печать
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Яндекс.Метрика Рейтинг@Mail.ru