Note: The other languages of the website are Google-translated. Back to English
Masuk  \/ 
x
or
x
Daftar  \/ 
x

or

Bagaimana cara mengirim email berulang jadwal di Outlook?

Di Microsoft Outlook, Anda dapat dengan mudah mengirim jadwal janji temu, rapat, atau tugas berulang kepada orang lain. Tapi jika Anda hanya ingin mengirim email berulang jadwal tanpa janji, rapat atau tugas, bagaimana Anda bisa melakukannya? Sayangnya, Outlook tidak menyediakan fitur untuk mengirim email berulang jadwal, tetapi dalam tutorial kami, kami akan menunjukkan kepada Anda cara mengirim email berulang jadwal di Outlook.

Kirim email berulang jadwal di Outlook dengan kode VBA


Kirim email berulang jadwal di Outlook dengan kode VBA

Tutorial ini dibagi menjadi empat bagian, Anda akan berhasil mengirim email berulang jadwal setelah menyelesaikan bagian tersebut. Silakan lakukan sebagai berikut.

Bagian Pertama: Buat janji baru

1. Harap navigasikan ke Kalender lihat dengan mengklik Kalender dalam Navigasi Pane, lalu buat janji temu baru dengan mengklik Penunjukan Baru bawah Home Tab.

3. Dalam Penunjukan dialog di bawah Penunjukan tab. Kamu butuh:

J: Ketik Subyek B: Masukkan alamat email penerima di tempat
C: Konfigurasi Waktu mulai dan Akhir waktu D: Pilih pengingat di bawah Peringatan daftar drop-down
Jika Anda memilih 15 menit, berarti akan mengingatkan Anda 15 menit lebih awal ketika email dikirim.
E: Susun tubuh pengangkatan Anda.

Catatan: Para Subjek Janji Temu akan menjadi subjek email berulang; dan Badan pengangkatan akan menjadi badan email berulang saat penerima menerima email tersebut.

Bagian Kedua: Buat kategori baru

Sekarang Anda perlu membuat kategori baru bernama "Kirim Jadwal Email Berulang" sebagai berikut:

1. Dalam Penunjukan dialog, silakan klik Mengkategorikan > semua Kategori dalam Tag kelompok di bawah Penunjukan Tab.

2. Ketika Kategori Warna dialog muncul, silakan klik Baru tombol. Dalam Tambahkan kategori baru dialog, ketik "Kirim Jadwal Email Berulang" dalam Nama bidang; lalu pilih warna dalam Warna daftar drop-down. Lalu klik OK.

3. Kemudian Anda akan melihat "Kirim Jadwal Email BerulangKategori dicantumkan, centang kotaknya, lalu klik OK tombol.

Bagian Ketiga: Atur Perulangan

Sekarang, saatnya mengatur pengulangan untuk janji temu.

1. klik Kambuh dalam Opsi kelompok di bawah Penunjukan tab. Lihat tangkapan layar:

2. Dalam Pengulangan Janji Temu dialog, konfigurasikan Kambuh pola. Jika Anda membutuhkan waktu berakhir, harap konfigurasikan di bawah Rentang kekambuhan. Dan kemudian klik OK.

3. Ketika kembali ke Penunjukan dialog, silakan klik Simpan & Tutup tombol. Lihat tangkapan layar:

Terakhir: Gunakan kode VBA untuk mengirim Jadwal Email Berulang

1. Silakan tekan lain + F11 untuk membuka Microsoft Visual Basic untuk Aplikasi dialog.

2. Klik dua kali Project1 > Objek Microsoft Outlook > ThisOutlookSession di panel kiri. Lihat tangkapan layar:

3. Salin dan tempel kode VBA berikut ke editor VBA. Dan kemudian klik Hemat tombol.

VBA: mengirim email berulang jadwal

Private Sub Application_Reminder(ByVal Item As Object)
'Updated by Extendoffice 20200522
Dim xMailItem As MailItem
Dim xItemDoc As Word.Document
Dim xNewDoc As Word.Document
Dim xFldPath As String
On Error Resume Next
If Item.Class <> OlObjectClass.olAppointment Then Exit Sub
If Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub
Set xMailItem = Outlook.Application.CreateItem(olMailItem)
Set xItemDoc = Item.GetInspector.WordEditor
xFldPath = CStr(Environ("USERPROFILE"))
xFldPath = xFldPath & "\MyReminder"
If Dir(xFldPath, vbDirectory) = "" Then
    MkDir xFldPath
End If
xFldPath = xFldPath & "\AppointmentBody.xml"
xItemDoc.SaveAs2 xFldPath, wdFormatXMLDocument ' wdFormatXML
Set xNewDoc = xMailItem.GetInspector.WordEditor
VBA.DoEvents
xNewDoc.Application.Selection.HomeKey
xNewDoc.Activate
xNewDoc.Application.Selection.InsertFile FileName:=xFldPath, Attachment:=False
With xMailItem
    .To = Item.Location
    .Recipients.ResolveAll
    .Subject = Item.Subject
    .Send
End With
Set xMailItem = Nothing
VBA.Kill xFldPath
End Sub

4. klik alat > Referensi untuk membuka Referensi - Proyek dialog. Dalam dialog, centang Perpustakaan objek Microsoft Word pilihan dan klik OK tombol.

5. tekan lain + Q kunci sekaligus untuk menutup Microsoft Visual Basic untuk Aplikasi jendela.

Ketika Peringatan bermunculan, email akan secara otomatis dikirim ke penerima yang telah Anda ketik di bidang Lokasi di bagian pertama. Lalu klik Memberhentikan dalam Peringatan dialog. Dan email akan dikirim berulang kali setiap hari saat ini. Lihat tangkapan layar:

Catatan: Kode VBA berhasil diuji di Outlook 2010 dan versi yang lebih baru.


Kutools for Outlook - Menghadirkan 100 Fitur Canggih ke Outlook, dan Membuat Pekerjaan Lebih Mudah!

  • CC / BCC Otomatis dengan aturan saat mengirim email; Maju Otomatis Beberapa Email secara khusus; Balas otomatis tanpa server pertukaran, dan lebih banyak fitur otomatis ...
  • Peringatan BCC - tunjukkan pesan ketika Anda mencoba membalas semua jika alamat email Anda ada di daftar BCC; Ingatkan Saat Lampiran Hilang, dan lebih banyak fitur pengingat ...
  • Balas (Semua) Dengan Semua Lampiran di percakapan surat; Balas Banyak Email dalam hitungan detik; Tambah Salam Otomatis saat membalas; Tambahkan Tanggal ke dalam subjek ...
  • Alat Lampiran: Kelola Semua Lampiran di Semua Email, Lepaskan Otomatis, Kompres Semua, Ganti Nama Semua, Simpan Semua ... Laporan Cepat, Hitung Email yang Dipilih...
  • Email Sampah yang Kuat dengan kebiasaan; Hapus Duplikat Email dan Kontak... Memungkinkan Anda melakukan lebih cerdas, lebih cepat, dan lebih baik di Outlook.
shot kutools outlook tab kutools 1180x121
shot kutools outlook kutools plus tab 1180x121
 

Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    john · 2 years ago
    This is limited on the number of email addresses you can add in the locations. Any work arounds?
  • To post as a guest, your comment is unpublished.
    Kevin · 2 years ago
    This still works. Just tested on Office 2016/ O365. Make sure macros are enabled. Make sure you are pasting the code under "application" and "Reminder" as shown in the screen shot.
  • To post as a guest, your comment is unpublished.
    anitanashgh · 2 years ago
    I am getting a "compile error: invalid outside procedure" every time ANY reminder pops up, not just the one's for the scheduled send. Also, my scheduled send doesn't work. Any ideas? I copied and pasted the code from above. Thanks.
  • To post as a guest, your comment is unpublished.
    Anita · 2 years ago
    Not working for me.... :(
  • To post as a guest, your comment is unpublished.
    Kathrin · 2 years ago
    It didn't work for me either :/.Is there any update available?
  • To post as a guest, your comment is unpublished.
    Simon Hogh · 2 years ago
    This still works? :D
  • To post as a guest, your comment is unpublished.
    Simon · 2 years ago
    Does this still work? Unfortunately it doesn#t work for me...
  • To post as a guest, your comment is unpublished.
    SS · 2 years ago
    Does this go out as an invite? Does the recipient have to accept the invite?
  • To post as a guest, your comment is unpublished.
    Johan · 2 years ago
    If I want multiple of these emails, each with a seperate category/calendar activity like "Send Schedule Recurring Email", "Send Schedule Recurring Email 2" & "Send Schedule Recurring Email 3" etc. How would I go about doing that? Do I copy this code all together for each category/calendar activity, or just add each "Send Schedule Recurring Email x" in the existing code? If so, how do I seperate them? Comma? < > ?
  • To post as a guest, your comment is unpublished.
    DTM · 2 years ago
    Just wanted to add my Thanks out here.
    I was struggling with my own version of this and found this and others.
    This is the best version of this I saw. Specifically what I like about it is - this works if you have multiple different emails you want to send. Because, it does not use "hardcoded" variables like the body or emails addresses pulling them from the appointment detail, you do not need to create different micros for each email or edit the code for every little detail that might change. You can even use this for non-reoccurring emails that you want o schedule (yes, you could do a delayed send). that's all controlled by the reoccurrence of the appointment.
    The one con is like any macro based solution, outlook does have to be open (running).

    A couple changes someone might want to make.
    If you do not want replies going to everyone who got the email, change .To - to .BCC.
    If you want to Review or make miner changes before it is sent, change .send to .display
  • To post as a guest, your comment is unpublished.
    Mel · 2 years ago
    I tried this but I cannot get my tests to work.
  • To post as a guest, your comment is unpublished.
    Chowa · 2 years ago
    Hi,
    Thank you so much. It works for Outlook 2016, the version we use at our company.
    I have a question. What do I need to add to the VBA so that it will also grab pictures? I included picture/graphics in my Body. The email grabbed text only.

    Please help.
    Ann
  • To post as a guest, your comment is unpublished.
    Guy · 2 years ago
    For those it's not working - You need to enable Macro commands on Outlook first
  • To post as a guest, your comment is unpublished.
    Laurie · 2 years ago
    Is it necessary to attach a reminder to trigger the email?
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @Chris Good Day,
    The code has been updated in the post. Please try it again.
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @Anonymouse Good Day,
    The code has been updated in the post. Please try it again.
  • To post as a guest, your comment is unpublished.
    Kristal · 3 years ago
    @Tracy Make another Distribution list that contains/points to the other Distribution Lists that you already have setup that you want to include.
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @tallgingerone God Day,
    Any question about Outlook, please don’t hesitate to post in our forum: https://www.extendoffice.com/forum.html.
    You will get more supports about Outlook from our Outlook professional.
  • To post as a guest, your comment is unpublished.
    tallgingerone · 3 years ago
    Hi there, my appointment did not send. I am unsure if there is an issue with the code I am using. I want to send the email to 6 addresses and have separated them with semi colons; do I need to put the actual email addresses in to the code? Here is the code I used:



    Private Sub Application_Reminder(ByVal Item As Object)
    Dim MItem As MailItem
    Set MItem = Application.CreateItem(olMailItem)
    If Item.MessageClass <> "IPM.Appointment" Then Exit Sub
    If Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub
    MItem.To = "single or multiple emails separated by semi colon ";" "
    MItem.CC = "single or multiple emails separated by semi colon ";" "

    MItem.Subject = Item.Subject
    MItem.Body = Item.Body
    With MItem
    .Attachments.Add "network path of the file to be attached. eg: \\abc\def\ghi.doc"
    .Display

    End With
    MItem.Send
    Set MItem = Nothing
    End Sub



    Can anyone advise? Thank you
  • To post as a guest, your comment is unpublished.
    Anonymouse · 3 years ago
    It didnt work for me
  • To post as a guest, your comment is unpublished.
    Chris · 3 years ago
    Same here, Office 2010 and 2016. Works great when setting up the First occurance, does not work when the next recurring reminder triggers the next week.
  • To post as a guest, your comment is unpublished.
    tmas · 3 years ago
    The first automatic one of the series worked but no more have
  • To post as a guest, your comment is unpublished.
    Malcolm · 3 years ago
    I mean "dismiss"
  • To post as a guest, your comment is unpublished.
    Malcolm · 3 years ago
    Nothing is happening after I click submit.
  • To post as a guest, your comment is unpublished.
    AndrewR · 3 years ago
    Very useful, thank you for taking the time to create this.
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @Newt Hey,
    The code is now updated in the post, please try again! Thank you!
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @CLAYTON Good Day,
    The <> does not effect the sending. Actually there is something wrong with the VBA code, and the code now is updated in the post. Please try again. Thank you!
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @Mani Dear Nani,
    The code has been updated to be compatible with Outlook 2013.
  • To post as a guest, your comment is unpublished.
    crystal · 3 years ago
    @Marc Dear Mac,
    The code has been updated to be compatible with Outlook 2016.
  • To post as a guest, your comment is unpublished.
    CLAYTON · 3 years ago
    I do not receive an email after I hit DISMISS ... I did use <> in the location field - is that correct?
  • To post as a guest, your comment is unpublished.
    engyaogoh@gmail.com · 3 years ago
    Hi All,


    I have added code to dismiss reminder once it was fired, so that we would not accidentally click snooze and cause the email to be resend. Also, code was added so that the full formatted email body is copied (including picture and attachment). Hope the code below will resolve all your issues.


    Code as below:


    Dim WithEvents objReminders As Outlook.Reminders
    Private Sub Application_Reminder(ByVal Item As Object)
    Dim MItem As MailItem
    Set MItem = Application.CreateItem(olMailItem)
    If Item.MessageClass <> "IPM.Appointment" Then Exit Sub
    If Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub
    MItem.To = Item.Location
    MItem.CC = ""
    MItem.BCC = ""
    MItem.Subject = Item.Subject
    MItem.BodyFormat = olFormatHTML
    Item.GetInspector().WordEditor.Range.Copy
    MItem.GetInspector().WordEditor.Range.Paste
    MItem.Display
    MItem.Send
    Set MItem = Nothing
    End Sub

    Private Sub Application_Startup()
    Set objReminders = Application.Reminders
    End Sub
    Private Sub objReminders_ReminderFire(ByVal ReminderOBject As Reminder)

    If ReminderOBject.Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub

    ReminderOBject.Dismiss

    End Sub


    Regards,
    Engyaogoh
  • To post as a guest, your comment is unpublished.
    Newt · 3 years ago
    <HELP>

    hi I found out one.
    The first test of the code, it works properly.
    But I found out the next day to test, I found out it is not working anymore. (not sending the mail to the destination)


    I have tried the macro setting, remove categories, seem not working too.
  • To post as a guest, your comment is unpublished.
    GP · 3 years ago
    A lot of people have asked about CC and adding an attachment and sending the mail to multiple people. Please use the VBA code below in place of the one provided in the VBA code step above.



    Private Sub Application_Reminder(ByVal Item As Object)
    Dim MItem As MailItem
    Set MItem = Application.CreateItem(olMailItem)
    If Item.MessageClass <> "IPM.Appointment" Then Exit Sub
    If Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub
    MItem.To = "single or multiple emails separated by semi colon ";" "
    MItem.CC = "single or multiple emails separated by semi colon ";" "

    MItem.Subject = Item.Subject
    MItem.Body = Item.Body
    With MItem
    .Attachments.Add "network path of the file to be attached. eg: \\abc\def\ghi.doc"
    .Display

    End With
    MItem.Send
    Set MItem = Nothing
    End Sub
  • To post as a guest, your comment is unpublished.
    PAP · 3 years ago
    Works well for Outlook 365! Thank you for sharing the code!
  • To post as a guest, your comment is unpublished.
    Ahmad · 3 years ago
    @William Hi, How did you change the macro security settings in outlook and what did you change it to?
  • To post as a guest, your comment is unpublished.
    Mani · 3 years ago
    It is not working in Outlook 2013. Any help?
  • To post as a guest, your comment is unpublished.
    Gandhiyappan · 3 years ago
    if my outlook is closed then mail is not sent. Is there any way to make it even when my outlook is closed
  • To post as a guest, your comment is unpublished.
    Brian · 3 years ago
    @Kyle Sorry - I'm not fully understanding "Spec@Group" - If I create a group called "NetworkMeeting" and add all the people in that, would the address be NetworkMeeting@MyDomain.com?
  • To post as a guest, your comment is unpublished.
    Sara · 3 years ago
    What Happens if I want to CC people?
  • To post as a guest, your comment is unpublished.
    victor · 3 years ago
    @Andrei Buldus it's stopping because of the line.... If Item.Categories <> "Send Schedule Recurring Email" Then Exit Sub
    when you add the other category it is cuasing the exit sub.... maybe use if instr(1,item.categories,"Send Schedule Recurring Email") =0 then exit sub or something like that...
  • To post as a guest, your comment is unpublished.
    Marc · 3 years ago
    Getting "Syntax Error " in VBA window. Using Outlook 2016 on Windows8
  • To post as a guest, your comment is unpublished.
    Ajmal · 3 years ago
    I've setup multiple emails in outlook, how would it know to send it from?
  • To post as a guest, your comment is unpublished.
    Kyle · 3 years ago
    @Krystin Asked and answered above. You add a distribution list (Outlook Contact Group) and use @ in the group name i.e. 'Spec@Group'. Put all the people you like in that group.
  • To post as a guest, your comment is unpublished.
    Krystin · 3 years ago
    It will not let me add the amount of people I need to send too ?
  • To post as a guest, your comment is unpublished.
    michelle · 3 years ago
    @Sally did you ever get an answer on how to add an attachment? Thanks!
  • To post as a guest, your comment is unpublished.
    Andrei Buldus · 3 years ago
    Hey guys. This code works great but i have a little problem . The email i am trying to send is part of two categories : Send Message(the macro uses) and PROGRAMARI RED-TEAM. The macro works fine when i only add the Send Message category, but as soon as any other category is added the macro stops sending emails. Here is the code so far. Please help :P

    Private Sub Application_Reminder(ByVal Item As Object)
    Dim objMsg As MailItem
    Set objMsg = Application.CreateItem(olMailItem)

    'IPM.TaskItem to watch for Task Reminders
    If Item.MessageClass "IPM.Appointment" Then
    Exit Sub
    End If

    If Item.Categories "Send Message" Then
    Exit Sub
    End If

    objMsg.To = Item.Location
    objMsg.BCC = "andrei.buldus@promotor.ws"
    objMsg.Subject = "Instiintare expirare Autorizatie/Contract Service"
    objMsg.Body = "Buna ziua," & vbNewLine & vbNewLine & _
    "Conform bazei noastre de date, autorizatia/contractul de service, incheiat intre compania nostra si " + Item.Subject + " urmeaza sa expire in termen de 14 zile." & vbNewLine & _
    "Acest lucru este in atentia departamentului nostru Service, si urmeaza sa fiti contactati in cel mai scurt timp posibil pentru a stabili cursul actiunilor viitoare." & vbNewLine & vbNewLine & _
    "Va multumim pentru increderea acordata." & vbNewLine & _
    "Promotor Import Export S.R.L." & vbNewLine & vbNewLine & vbNewLine & _
    "Acesta este un mesaj automat."

    objMsg.Send

    Set objMsg = Nothing
    End Sub
  • To post as a guest, your comment is unpublished.
    Duane Cowperthwait · 4 years ago
    I need to know how\if you can attached an excel spreed sheet?
  • To post as a guest, your comment is unpublished.
    Tracy · 4 years ago
    @Kyle This worked well. Now I need the same email to go to multiple groups. Can anyone help?

    Private Sub Application_Reminder(ByVal Item As Object)

    Dim CF As Folder
    Set CF = Application.Session.GetDefaultFolder(olFolderContacts)

    Dim DLI As DistListItem
    Set DLI = CF.Items("GDL Group 1")

    Dim MItem As MailItem
    Set MItem = Application.CreateItem(olMailItem)
    If Item.MessageClass "IPM.Appointment" Then Exit Sub
    If Item.Categories "Recurring GDL Recert Email" Then Exit Sub
    MItem.To = DLI
    MItem.Subject = Item.Subject
    MItem.Body = Item.Body
    MItem.Send
    Set MItem = Nothing

    End Sub
  • To post as a guest, your comment is unpublished.
    Tracy · 4 years ago
    @alex Alex

    Mine shows up with the formatting stripped out too. How do we keep it?
  • To post as a guest, your comment is unpublished.
    Tracy · 4 years ago
    It sent fine, but it dropped all of the fancy formatting I have in my email body. How do I get it to keep this formatting???