0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
||||||
1 | ||||||
VBA Outlook: Как открыть сообщение для редактирования через объектную модель Word?04.02.2017, 17:26. Показов 2731. Ответов 8
Метки нет (Все метки)
Добрый день!
Подскажите, плиз, как открыть сообщение (MailItem) для редактирования через объектную модель Word (через свойство Inspector.WordEditor)? (сообщение не новое - а полученное или уже отосланное) Outlook 2010. Руками это делается в окне чтения сообщения в ленте через Сообщение - Переместить - Действия - Изменить сообщение. А как это сделать программно? В приведенном ниже коде попытка sRange.InsertAfter - приводит к ошибке "Run-time error '4605': Метод или свойство недоступны, поскольку документ заблокирован для редактирования." Посмотрел, в sDoc.ProtectionType стоит "wdAllowOnlyReading". А если вручную открыть на редактирование - то "wdNoProtection". Но попытка сделать sDoc.Unprotect приводит к ошибке "Run-time error '4605': Данная команда недоступна." В свойствах MailItem или Inspector ничего подходящего не вижу. Если сделать "Изменить сообщение" руками - то приведенный код работает. Подскажите, плиз!
PS. В аутлуке нет макрорекордера. Посмотреть код ручного нажатия "Изменить сообщение" нельзя
0
|
04.02.2017, 17:26 | |
Ответы с готовыми решениями:
8
Где можно посмотреть объектную модель VBA Как можно открыть активную ячейку для редактирования (F2) возможностями VBA в Ecxel? Шаблон письма из Word в Outlook через Excel VBA Как изменить содержимое тега через объектную модель документа? |
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|
06.02.2017, 16:01 [ТС] | 2 |
На всякий добавлю, что можно, конечно, делать через .HTMLBody, но для основной задачи (функции замены строки1 на строку2) он хуже, т.к. там могут куда-либо вклиниться тэги, а отлавливать их - это отдельный гемор...
К тому же, некоторые письма в HTML выглядят неожиданно (состоят не из нормальных знаков, а из их кодов а-ля & # 1088 ; ). Короче, надо будет либо писать какой-то мегакод вместо небольшого и понятного, либо доделывать руками. Модель Word, мне кажется, всё бы решила...
0
|
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|
07.02.2017, 16:45 [ТС] | 3 |
Всю голову себе сломал.
По 7 раз пересмотрел членов MailItem, Inspector, Application, Word.Document и бог знает чего еще... Почитал несколько учебников, где про Аутлук пишут... но всё мимо Ничего не нахожу рабочего Кажется, нашел решение через SendKeys: Application.ActiveInspector.Activate SendKeys "%TCC", True - делает симуляцию нажатия кнопки "Изменить сообщение" В тесте, вроде, отрабатывает. Надеюсь, и в бою будет... Но буду рад если кто подскажет решение через объекты всё же! Т.к. более надежно и понятно. И более быстро, наверное...
0
|
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|
09.02.2017, 15:21 [ТС] | 4 |
SendKeys работает, но долго.
Так что тема по-прежнему актуальна! Добавлено через 8 часов 47 минут Как выясняется, sDoc.Unprotect работает. Но не на всех сообщениях. На каких-то работает, на каких-то нет. От чего зависит, не понятно. По-прежнему очень надеюсь на ответ, как через VBA в инспекторе сделать "Сообщение - Действия - Изменить сообщение" без SendKeys!
0
|
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|
09.02.2017, 15:53 [ТС] | 6 |
Думаю, что наверняка используется. Тут вопрос не в какой-то специфической задаче, а чисто в одном действии - разлочить
Наверняка на форуме сидит сотня людей, который знают ответ. Но не говорят
0
|
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|
11.02.2017, 12:38 [ТС] | 8 |
Странно. Я половину ответов на возникающие вопросы выгугливал на этом форуме
Добавлено через 27 минут В основном по Excel'ю, правда
0
|
0 / 0 / 0
Регистрация: 18.11.2015
Сообщений: 13
|
|||||||||||
13.02.2017, 13:54 [ТС] | 9 | ||||||||||
Пока не нашел то, что нужно, прям в самих объектах.
Но нашел, как через объекты симулировать нажатие "Изменить сообщение" без SendKeys:
0
|
13.02.2017, 13:54 | |
13.02.2017, 13:54 | |
Помогаю со студенческими работами здесь
9
Можно как либо открыть файл для редактирования в Excel и в Word? Как открыть Word в режиме редактирования? Открыть с VB Form БД *.mdb через Access для редактирования Как открыть документ Word из VBA-Excel Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |