Всплывающее окно покажет в перспективе для нежелательного получателя - PullRequest
0 голосов
/ 02 мая 2018

У меня есть список из 150 человек, и я не хочу отправлять какие-либо электронные письма, кроме списка. Можно ли установить макрос в Outlook, где, если я попытаюсь отправить любое электронное письмо на адрес электронной почты, которого нет в списке, я получу всплывающее окно перед отправкой электронного письма?

1 Ответ

0 голосов
/ 02 мая 2018

Да, это так. Вы можете обработать событие ItemSend класса Application, которое вызывается при отправке элемента Microsoft Outlook, либо пользователем через Inspector (до закрытия инспектора, но после нажатия пользователем кнопки «Отправить»), либо когда метод Send для элемента Outlook, например MailItem, используется в программе.

Public WithEvents myOlApp As Outlook.Application 

Public Sub Initialize_handler() 
  Set myOlApp = Outlook.Application 
End Sub 

Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean) 
  Dim prompt As String 
  prompt = "Are you sure you want to send " &; Item.Subject &; "?" 
  If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then 
    Cancel = True 
  End If 
End Sub

Вместо простого отображения окна сообщения, запрашивающего у пользователей разрешения на отправку элемента Outlook, вы можете проверить коллекцию Получатели (см. Соответствующее свойство элемента Outlook). Он представляет всех получателей для элемента Outlook. Таким образом, вы можете проверить их и сравнить с вашим списком.

...