2015-05-01 13 views
0

Я ищу код VBA для Outlook 2013, который автоматически сохранит черновик либо при открытии окна композиции, при ответе или пересылке электронной почты (это нормально, если он срабатывает и для вновь составленных сообщений), либо перед отправкой, нажав кнопку «Отправить».Автоматически сохранять черновик электронной почты

По существу эмулировать удар по значку «Сохранить» или Ctrl-S либо перед составлением, либо перед отправкой сообщения.

Outlook генерирует сообщение «Не удалось выполнить операцию, потому что поставщик почтового провайдера не поддерживает ее» при ответе на или пересылке электронной почты аккаунта Google Apps, когда учетные записи Google Apps объединены с другими учетными записями электронной почты в Outlook.

Я обнаружил, что обход - это вручную сохранить электронную почту перед отправкой. Я могу сделать это вручную, но часто забываю. Не удается сделать это после появления сообщения об ошибке. Попытка сэкономить после ошибки «не удалось завершить» приводит к другой ошибке.

BTW, у меня уже есть обычная работа с событием Application_ItemSend; добавит еще один конфликт?

Update: Вот вариант того, что я пробовал:

Private Sub Application_ItemSend(ByVal item As Object, Cancel As Boolean) 
' Runs when the item is being sent. 
    Call AutoSaveDraft(item) 
    Call CheckSubject(item) 
End Sub 

(CheckSubject пожары)

Private Sub AutoSaveDraft(item As Object) 
    item.Save 
    SendKeys "+{F12}" ' Save the message. ## 
    SendKeys "^S" 
    Sleep 1000 ' Pause execution 1 second. The Windows sleep function is  called in the beginning ## 
End Sub 

(Да, у меня есть все три возможных методов сохранения Пытались их также в индивидуальном порядке..

ответ

0

Вы можете вызвать метод . Сохраните метод в обработчике событий ItemSend, если он помогает избежать проблем.

Вы можете найти полезную статью Getting Started with VBA in Outlook 2010.

+0

Спасибо. Извините, я так поздно возвращаюсь, чтобы проверить ответ. Хотя бы это было так, но я пробовал три разных способа без успеха. (что, вероятно, означает, что я делаю что-то неправильно). Я попытался использовать item.save в Private Sub Application_ItemSend (элемент ByVal As Object, Cancel As Boolean), подпрограмму сохранения, используя методы item.save и sendkeys, вызываемые Item_Send, все без какого-либо efect (другая процедура, вызванная Item_send, для проверки для отсутствия строки темы s, кажется, работает просто отлично) – MarkK

+0

Вместо этого я предлагаю обновить исходное сообщение. –

+0

Я сделал обновление. Спасибо. – MarkK

0

Поскольку оригинальный плакат не дают понять, это то, что на самом деле работает, чтобы предотвратить ошибки, связанные с непредоставлением Google Apps счета, когда просто ударяя Отправить:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) 
    Item.Save 
End Sub 
Смежные вопросы