Мне нужен фильтр или правило, которое позволяет мне отправлять массовые электронные письма примерно 200 получателям, когда электронное письмо получено с определенного адреса. Например, когда почтовый клиент получает электронное письмо от test@gmail.com , я хочу, чтобы он повторно отправил электронное письмо всем людям в моей адресной книге.

Я пытался установить правила в почтовых клиентах Outlook и Thunderbird, но единственная опция, которую я имею, - это "Переслать", а не "Переслать" или "Отправить" письмо. Существует дополнительная проблема, что все получатели появляются в списке адресов. Я хочу, чтобы все адресаты были скрытыми.

Есть какой-либо способ сделать это?

1 ответ1

2

Вы можете создать правило для пересылки в список рассылки bcc.

Редактировать 2015 02 23

Хотя вышесказанное технически верно. Это не так просто, как я думал. В диалоговом окне нет опции bcc для адресов при пересылке по правилу. Моя версия 2010 года.

Вы можете установить скрытую копию в правиле с параметром запуска сценария, а не с помощью диалогового окна.

Option Explicit

Sub Forward_BCC_DL(item As Object)

Dim newForward As MailItem
Dim myRecipient As Recipient

If item.Class = olMail Then

    Set newForward = item.Forward

    Set myRecipient = newForward.Recipients.Add("Name of Distribution List with the quotes")
    myRecipient.Type = olBCC

    newForward.Recipients.ResolveAll
    newForward.Display  ' Comment out with a leading apostrophe once tested
    'newForward.Send    ' Remove leading apostrophe once tested

End If

ExitRoutine:
    Set newForward = Nothing
    Set myRecipient = Nothing

End Sub

Private Sub Forward_BCC_DL_Test()
' To test
'  open a message then run this code
Dim curritem As Object
Set curritem = ActiveInspector.currentItem
Forward_BCC_DL curritem
End Sub

Если вы не знакомы с VBA, это будет полезно.

Начало работы с VBA в Outlook 2010

Как использовать Outlook VBA Editor

Редактировать 2015 02 23 - Конец

Редактировать 2015 02 24

Вероятно, лучше создать список рассылки, как указано выше, но при этом все контакты будут извлекаться медленно.

Option Explicit

Sub Forward_BCC_All(mail As MailItem)

    Dim ContactsFolder As folder
    Dim Contact As Object
    Dim objMail As MailItem
    'Dim j As Long
    Dim objRecip As Recipient

    Set ContactsFolder = Session.GetDefaultFolder(olFolderContacts)

    Set objMail = mail.Forward
    'j = 0

    For Each Contact In ContactsFolder.Items

        'j = j + 1

        With objMail
            'Debug.Print j & ": " & Contact
            Set objRecip = .Recipients.Add(Contact)
            objRecip.Type = olBCC
        End With

    Next

    'Debug.Print "Resolving contacts slowly"

    objMail.Recipients.ResolveAll
    objMail.Display

ExitRoutine:
    Set objMail = Nothing
    Set ContactsFolder = Nothing
    Set Contact = Nothing

End Sub

Private Sub Forward_BCC_All_test()
Dim currItem As MailItem
Set currItem = ActiveInspector.currentItem
Forward_BCC_All currItem
End Sub

Редактировать 2015 02 24 - Конец

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .