Bagaimana cara mengirim email di Outlook dengan VBA?

Diperbarui: Agustus 2021; Berlaku untuk Microsoft Outlook 365/2019/2016

Berikut catatan yang kami dapatkan dari seorang pembaca.

Terima kasih atas bantuan pengkodean Outlook Anda yang sangat berguna. Saya ingin tahu apakah Anda dapat membagikan beberapa kode untuk membantu mengotomatiskan pengiriman email di Outlook? Saya tahu bahwa ada beberapa cara untuk mengirim pesan berulang tetapi saya secara khusus tertarik menggunakan VBA untuk tugas saya ini.

Terima kasih atas pertanyaannya. Mengirim email secara otomatis tampaknya menjadi salah satu tugas paling berguna dan populer yang dapat Anda otomatisasi menggunakan VBA. Baca terus untuk detail lebih lanjut dan skrip sederhana untuk membantu Anda memulai di sini.

Menulis VBA untuk mengirim email Outlook

Dalam contoh yang agak sederhana di bawah ini, kita akan membahas langkah-langkah berikut:

  1. Pertama, kita akan menggunakan model objek VBA Outlook untuk membuat item email baru.
  2. Kemudian kita akan melanjutkan dan mengatur kepentingan pesan, penerima (dipisahkan dengan titik koma) dan gaya dan konten teks isi.
  3. Kemudian kami akan menampilkan pesan di aplikasi Microsoft Outlook Anda.
  4. Terakhir, kami akan melanjutkan dan mengirimkannya ke penerima.

Berikut kode VBA sederhana untuk membuat dan mengirim email sederhana secara otomatis. Perhatikan bahwa Anda harus dengan mudah meningkatkan skrip ini untuk menyertakan lampiran file, tugas, dll', tetapi mari kita mulai dengan skrip yang sangat dasar.

Sub SendMail()
Dim MyEmail As MailItem
Set MyEmail = Application.CreateItem(olMailItem)

With MyEmail
.To = ""
.Importance = olImportanceHigh
.Subject = ""
.Body = ""
.BodyFormat = olFormatHTML
.Display
End With

'I purposely commented the next line, uncomment it by removing the "'" sign to send your email.
' MyEmail.Send
End Sub

Pintasan makro Outlook VBA

Anda mungkin ingin melihat cara mengaitkan kode VBA yang baru saja Anda tulis dengan tombol perintah di Outlook. Ini akan memungkinkan Anda untuk meluncurkannya dengan mudah dari pintasan yang ditempatkan di Pita Outlook.

Berikut cara melakukannya:

  1. Pertama, lanjutkan dan buka Microsoft Outlook.
  2. Tekan File lalu pilih Opsi
  3. Sekarang lanjutkan dan pilih Customize Ribbon.
  4. Di bagian Customize Ribbon, Anda akan melihat kotak Choose Commands from list.
  5. Pilih Makro
  6. Kemudian Pilih kode VBA yang baru Anda buat, dalam kasus kami namanya adalah SendMail.
  7. Kemudian tekan Tambah dan kemudian OK. Secara opsional, Anda mungkin ingin menetapkan ikon ke Makro Anda.
  8. Makro Anda akan tersedia di toolbar Akses Cepat di sisi kiri atas aplikasi Outlook Anda.

Kemungkinan masalah dengan pengaturan makro VBA

Pengaturan makro Outlook Anda mungkin perlu disetel untuk menjalankan makro. Jika demikian, inilah cara melakukannya.

Bonus: Kirim Email dari Outlook Menggunakan PowerShell

Di PowerShell, Anda dapat menggunakan cmdlet Kirim-MailMessage untuk mengirim email. Namun, Anda harus melakukan autentikasi ke server email, dan tidak mendukung metode autentikasi modern, seperti OAuth dan Microsoft Modern Authentication. Jadi mengirim email akan lebih mudah jika Anda memiliki profil Outlook yang dikonfigurasi di komputer Anda.

Berikut adalah contoh skrip PowerShell yang membaca data dari file Excel dan menggunakan profil Outlook untuk mengirim email ke setiap pengguna:

# buka file Excel $ExcelWorkBook.close($true) } $email.Kirim() #kirim pesan email $email.Lampiran.tambahkan($strfile) # Lampirkan file (bila perlu) $email.Body =  $strBody $email.Subjek = $strSubj $email.Ke = $useremail $email = $outlook.CreateItem(0) $outlook = [Runtime.InteropServices.Marshal]::GetActiveObject("Outlook.Application") # Kami berasumsi bahwa Outlook sedang berjalan, jika tidak, Anda harus memulainya dengan perintah $outlook = new-object -comobject Outlook.application $strfile="C:\ps\" + $useremail + ".txt" $strBody = $strBody + "`r`n Tanggal dan waktu perubahan password terakhir adalah : " +  $pwdchange $strBody = $strBody + " `r`n Akun Anda di domain woshub.com ada di " + $Status $strBody = "Yang terhormat " + $Nama Pengguna Lengkap $strSubj = " Status akun Anda di domain woshub.com " # Buat teks isi pesan $pwdchange = $ExcelWorkSheet.Columns.Item(3).Rows.Item($i).Teks $Status =  $ExcelWorkSheet.Columns.Item(4).Rows.Item($i).Teks $FullUsername =  $ExcelWorkSheet.Columns.Item(2).Rows.Item($i).Teks $useremail = $ExcelWorkSheet.Columns.Item(1).Rows.Item($i).Teks for($i=2;$i -le $jumlah baris;$i++){ # Ulangi semua baris di kolom 1, mulai dari baris kedua (sel ini berisi nama pengguna dan email). $rowcount=$ExcelWorkSheet.UsedRange.Rows.Count # Dapatkan jumlah baris terisi dalam file xlsx $ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Sheet1") $ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelObj = Objek Baru -objek Excel.Aplikasi



























skrip PowerShell untuk mengirim email dari profil yang dikonfigurasi Outlook

Skrip PowerShell ini mengasumsikan bahwa Outlook sedang berjalan di komputer Anda. Skrip menghasilkan subjek dan isi email untuk setiap alamat SMTP penerima dalam file XLSX dan melampirkan file tersebut. Lalu mengirimkan emailnya.


Bagaimana cara membuat template email di Microsoft Outlook.com 365?

Bagaimana cara membuat template email di Microsoft Outlook.com 365?

Bagaimana cara membuat template email di Microsoft Outlook.com 365?

Bagaimana cara mengubah pewarnaan peluru di Word?

Bagaimana cara mengubah pewarnaan peluru di Word?

Dalam posting ini Anda akan belajar cara memodifikasi daftar bullet / warna dan ukuran poin di Excel, PowerPoint dan Word 365/2016/2019.

Hentikan dan hapus pesan email duplikat di Outlook 2016 dan 2019

Hentikan dan hapus pesan email duplikat di Outlook 2016 dan 2019

Apakah kotak surat Anda penuh dengan entri email duplikat? Pelajari cara berhenti menerima dan menghapus pesan yang berlebihan di kotak surat Outlook 365/2019/2016 di MAC dan Windows.

Bagaimana cara menambahkan gambar gif di badan email atau tanda tangan Outlook 2016/2019?

Bagaimana cara menambahkan gambar gif di badan email atau tanda tangan Outlook 2016/2019?

Pelajari cara menambahkan / menyematkan dan mengirim gambar gif ke email keluar Outlook 2016 dan 2019 Anda.

Bagaimana cara menyegarkan email kotak masuk Outlook saya ketika tidak diperbarui secara otomatis?

Bagaimana cara menyegarkan email kotak masuk Outlook saya ketika tidak diperbarui secara otomatis?

Kotak masuk Outlook tidak diperbarui secara otomatis? Pelajari bagaimana Anda bisa secara otomatis me-refresh kotak masuk Outlook 365/2019/2016/2013 Anda secara otomatis.

Bagaimana cara mengirim email di Outlook dengan VBA?

Bagaimana cara mengirim email di Outlook dengan VBA?

Pelajari cara menulis makro Outlook untuk mengotomatiskan pengiriman email.

Mengapa Outlook offline atau terputus dan bagaimana menghubungkan kembali?

Mengapa Outlook offline atau terputus dan bagaimana menghubungkan kembali?

Pelajari cara mendiagnosis dan memecahkan masalah berbagai masalah pemutusan klien Microsoft Outlook di Windows 10.

Formulir Outlook: Bagaimana cara membuat formulir yang dapat diisi di Microsoft Office 2016/2019?

Formulir Outlook: Bagaimana cara membuat formulir yang dapat diisi di Microsoft Office 2016/2019?

Pelajari bagaimana Anda bisa mendesain dan membuat formulir pengguna kustom Outlook.

Hentikan pemberitahuan kalender Outlook 365 / 2019/2016 untuk rapat dan janji agar tidak muncul

Hentikan pemberitahuan kalender Outlook 365 / 2019/2016 untuk rapat dan janji agar tidak muncul

Pelajari cara menonaktifkan pengingat dan pemberitahuan dari kalender Outlook 2016/2019, baik di Windows maupun MAC.

Bagaimana membuat Microsoft Outlook berjalan lebih cepat (versi 2019/365/2016)?

Bagaimana membuat Microsoft Outlook berjalan lebih cepat (versi 2019/365/2016)?

Pelajari cara meningkatkan kinerja Outlook Anda.