Cara Mengirim Email Outlook dengan Macro VBA

Mengirim Email ke Outlook dengan VBA

Microsoft Oulook sudah menjadi Aplikasi Email default untuk Sistem Operasi berbasis windows. Jika kita menggunakan Sistem Operasi Windows, aplikasi Outlook sudah terinstal didalamnya tanpa perlu lagi kita melakukan instalasi untuk aplikasi ini.

Microsoft Outlook juga merupakan turunan dari produk Micorosoft tentu saja Excel VBA bisa mengenali Aplikasi Outloook ini sebagai Object sehinga dalam pembuatan script VBA untuk mengirim email ke Outlook relatif lebih mudah.

Untuk mengirim Email Melalui Outlook dengan Macro VBA excel, pada tutorial kali ini akan saya buat dengan teknik Late Binding agar tidak perlu menambahkan preference MS Outlook. Tapi sebelum itu saya akan siapkan Data untuk Simulasi Tutorial kali ini.

Dari data diatas kita akan mengirimkan Email melalui Outlook dengan data-data yang kita isi di Kolom B, kemudian pada Sheet2 dalam File contoh diatas ada sebuah table data yang nantinya akan dikirim sebagai Attachment Email.

Untuk Script mengirim Email Outlook dengan VBA bisa di simak pada source code dibawah ini.

 Visual Basic Editor 
Sub KirimEmail()
Rem Auth : ExcelNoob.com
Dim Outl As Object   'Deklarasi Object
Dim Msg As Object
Dim Atch As String

'Set Object Outlook
Set Outl = CreateObject("Outlook.Application")
Set Msg = Outl.CreateItem(0)

' Memisahkan Sheet2 untuk Attachment
ThisWorkbook.Worksheets("Sheet2").Copy
Atch = ThisWorkbook.Path & "\namaFileAttach.xlsx"
With ActiveWorkbook
     .SaveAs Atch
     .Close 0
End With

' isi Item
Msg.To = Sheet1.Range("B2").Value
Msg.CC = Sheet1.Range("B3").Value
Msg.bcc = Sheet1.Range("B4").Value
Msg.Subject = Sheet1.Range("B5").Value
Msg.Body = Sheet1.Range("B6").Value
Msg.Attachments.Add Atch
Msg.Recipients.ResolveAll
Msg.Display

End Sub

Jika kita dijalankan script diatas, akan membuka windows untuk Pesan baru dalam Outlook dengan parameter-parameter yang sudah kita tentukan sebelumnya seperti gambar dibawah ini.

Body Email dalam Format HTML

Pada script diatas, body email yang dikirim masih dalam bentuk plain text. Jika menginginkan sebuah format HTML, ada sedikit penyesuaian didalam script diatas, agar body email yang dikirim dalam bentuk HTML.

'ubah msg.body menjadi
  Msg.HTMLBody = "<HTML><BODY>Isi body email dalam Format HTML </BODY></HTML>"

Selain mengirim email melalui Outlook, Macro Excel juga bisa mengirim email melalui Thunderbird untuk cara dan script VBA yang digunakan bisa dibaca di Cara mengirim email Melalui Thunderbird dengan VBA Excel . Gimana, mudah bukan. Dengan script diatas kita bisa dengan mudah mengirim Email untuk memudahkan Pekerjaan kita. Dan kita tidak perlu cape-cape mengirim email secara manual.

Be the first to comment

Leave a Reply

Your email address will not be published.


*