Zaplanowane i cykliczne wiadomości e-mail w programie Outlook?

22

Muszę wysyłać e-maile o określonej porze dnia i muszę to robić codziennie. Jak mogę to zrobić za pomocą programu Outlook?

Delay deliverypomaga wysyłać pocztę w określonym czasie; ale jak utworzyć nową pocztę, która zostanie wysłana na jutro?

wprowadź opis zdjęcia tutaj

Nam G VU
źródło
1
Jeśli nie masz nic przeciwko VBA, to podejście może Ci pomóc
kmote
Dziękuję Ci. Czytam makro, ale tak naprawdę nie wiem, jak to zrobić. Proszę, poprowadź mnie i podaj odpowiedź, a nie komentarz, aby zostać zaakceptowanym.
Nam G VU
Zalecam dodanie do wpisu więcej szczegółów: czy wiadomości e-mail są codziennie identyczne, czy treść jest generowana automatycznie? Czy adresy docelowe są identyczne?
kmote
Drogi @ kmote, treść i adres e-mail są podawane codziennie
Nam G VU

Odpowiedzi:

28

OK, oto krótkie wyjaśnienie jednego ze sposobów na zrobienie tego. Wymaga skonfigurowania makra w edytorze VBA programu Outlook. Jeśli nigdy wcześniej tego nie robiłeś, musisz najpierw przejść trochę konfiguracji. (Należy pamiętać, że chociaż tworzenie makr dla programu Outlook nie jest trudne, istnieje kilka miejsc, w których mogą wystąpić błędy, które mogą prowadzić do zamieszania i frustracji. Jeśli jesteś początkujący i chcesz kontynuować, bardzo polecam uważnie przeczytać całą stronę MSDN powiązane z pierwszym krokiem poniżej).

1. Otwórz edytor VBA.

Na pasku wstążki programu Outlook kliknij kartę Deweloper (włącz ją tutaj ), a następnie kliknij Visual Basic. Jeśli nie masz karty Deweloper na pasku wstążki, musisz ją włączyć. Zapoznaj się z instrukcjami na tej stronie MSDN (przewiń w dół do sekcji „Aby włączyć kartę Deweloper”. UWAGA: powinieneś również przeczytać sekcję tej witryny z etykietą „Aby włączyć makra”). Naciśnięcie Visual Basicprzycisku spowoduje otwarcie całej nowej aplikacji (edytor VBA); otwórz ThisOutlookSession, duże okienko pośrodku to miejsce, w którym pójdzie twoje makro.

Aby użyć, naciśnij Alt + F11, aby otworzyć edytor VBA, a następnie skopiuj kod i wklej go do ThisOutlookSession. ( odniesienie )

wprowadź opis zdjęcia tutaj

2. Wklej następujące makro w dolnej części panelu makr.

'Original function written by Diane Poremsky: http://www.slipstick.com/developer/send-email-outlook-reminders-fires/
Private Sub Application_Reminder(ByVal Item As Object)
  Dim objMsg As MailItem
  Set objMsg = Application.CreateItem(olMailItem)    

If Item.MessageClass <> "IPM.Appointment" Then
  Exit Sub
End If

If Item.Categories <> "Automated Email Sender" Then
  Exit Sub
End If

  objMsg.To = Item.Location
  objMsg.Subject = Item.Subject
  objMsg.Body = Item.Body
  objMsg.Send

  Set objMsg = Nothing
End Sub

3. Utwórz nową kategorię.

Nowo utworzoną kategorię ( jak ) należy nazwać Automated Email Sender(jest to dowolny tytuł, ale jeśli go zmienisz, pamiętaj, aby zmienić go również w makrze).

4. Utwórz spotkanie w kalendarzu.

Umieść wiadomości e-mail odbiorcy w polu „Lokalizacja”.

Pole „Temat” spotkania będzie używane jako pole Temat wiadomości e-mail.

„Treść” spotkania będzie Treścią e-maila.

Umów spotkanie, aby powtarzało się według dowolnego harmonogramu. Pamiętaj, aby ustawić przypomnienie.

Ustaw czas przypomnienia

Nie zapomnij również przypisać kategorii utworzonej w poprzednim kroku.

Najpierw przetestuj, umieszczając własny adres e-mail w polu Lokalizacja.

wprowadź opis zdjęcia tutaj


To jest to! Dopóki ustawienia zabezpieczeń makr są prawidłowe, makro to spowoduje automatyczne wysyłanie wiadomości e-mail za każdym razem, gdy przypomnienie zostanie uruchomione na spotkaniu z określoną kategorią.

kmote
źródło
1
Niesamowite, to działa dla mnie ^^ Dziękuję bardzo!
Nam G VU
2
@kmote Pytanie, jakie znaczenie ma przypomnienie, aby to zadziałało? Nie zauważyłem tego w kodzie.
SiegeX
1
@SiegeX: zwróć uwagę na nazwę funkcji ( Application_Reminder). Jest to wbudowana obsługa zdarzeń programu Outlook, która jest wywoływana automatycznie przez program Outlook za każdym razem, gdy uruchamiane jest przypomnienie. Przypomnienie to wyzwalacz, który sprawia, że ​​działa.
kmote
@kmote Rozumiem, więc jeśli ustawię czas appt na 2 po południu i ustawię przypomnienie na 30 minut przed appt, wiadomość e-mail zostanie wysłana o 13:30 zamiast 14 po południu?
SiegeX
1
Można to również połączyć z szablonem, zmieniając linię tworzenia w kodzie VBA na objMsg = Application.CreateItemFromTemplate("C:\Users\[USER]\AppData\Roaming\Microsoft\Templates\Test.oft").
Andy Mercer