Скриване на бутона за изпращане в Outlook 2013

Имам приставка за Outlook, която отваря изскачащ прозорец, след като потребителят щракне върху бутона „Изпращане“. В този прозорец потребителят избира изпращач на имейл. Така че използвам събитието „ItemSend“ и ако променя свойството „SendOnBehalf“ вътре в това събитие, тогава Outlook просто заменя моите промени, така че трябва да го направя преди „ItemSend“, намерих само едно събитие преди „ItemSend“, това е „BeforeCheckNames“, но мога да не го използвам, защото изскачащият ми прозорец се отваря много пъти. Така че последната ми идея може би мога да скрия стандартния бутон „Изпращане“ и да сложа моя бутон за изпращане на имейл, отколкото да направя промените си и след това да кажа email.Send(). Открих, че този въпрос е зададен преди Замяна на Outlook 2010 Бутон за изпращане?, но няма отговор. Може би имате някакви идеи? Благодаря за помощта


person masta    schedule 08.07.2015    source източник


Отговори (3)


Не, бутонът Изпрати не може да бъде скрит. Защо не добавите разгъващ се списък към лентата и не позволите на потребителя да посочи подателя, преди да изпрати? Можете да зададете SendOnBehalf веднага щом потребителят избере стойност от падащия списък.

person Dmitry Streblechenko    schedule 08.07.2015

Като алтернатива можете да промените кода на ItemSend. SentOnBehalfOfName ще се придържа към копиран елемент.

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

Dim copiedItem As MailItem

If Item.Class = olMail Then

    Set copiedItem = Item.Copy

    copiedItem.SentOnBehalfOfName = "[email protected]"
    'copiedItem.Display
    copiedItem.Send

    Item.Delete
    Cancel = True

End If

    Set copiedItem = Nothing

End Sub
person niton    schedule 08.07.2015
comment
Обработчикът на събитието ItemSend ще се извиква рекурсивно... Всеки път, когато извиквате метода Send, така че по принцип първо трябва да проверим стойността на свойството. И само ако няма никаква стойност, можем да го зададем. - person Eugene Astafiev; 08.07.2015
comment
@Юджийн. Ако има рекурсия, но тя не е рекурсивна за мен. - person niton; 08.07.2015

Друг вариант е да използвате типовете региони на формуляри Замяна или Замяна на всички, които позволяват пълната замяна на стандартния формуляр.

  • Заместване – Добавя областта на формуляра като нова страница, която замества страницата по подразбиране на формуляр на Outlook.
  • Замени всички - Заменя целия формуляр на Outlook с областта на формуляра.

Вижте Създаване на региони на формуляр на Outlook за повече информация .

person Eugene Astafiev    schedule 08.07.2015