Visual Basic for Applications atau VBA ialah bahasa pengaturcaraan yang berkuasa lagi mudah dan membolehkan anda mengautomasikan Microsoft Excel sepenuhnya. Satu automasi sedemikian adalah menggunakan kod VBA untuk menyepadukan apl Microsoft lain seperti Outlook, PowerPoint dan Word serta meningkatkan produktiviti.
Menghantar e-mel dengan VBA dalam Excel ialah satu penyepaduan sedemikian yang menjadikan hidup anda lebih mudah dengan mengautomasikan hamparan atau melaporkan tugasan mel. Tutorial ini akan memandu anda melalui langkah-langkah menghantar e-mel dengan VBA daripada Excel dalam langkah yang mudah diikuti.

Pengaktifan Perpustakaan Objek Microsoft Outlook
Anda perlu menetapkan rujukan objek e-mel Outlook kerana ia adalah objek luar untuk Excel VBA . Ikuti langkah-langkah ini:
- Simpan fail Excel sedia ada sebagai fail yang didayakan Makro dengan mengklik pada Fail > Simpan Sebagai > pilih lokasi dan tukar jenis Simpan sebagai .
- Tekan Alt+F11 untuk membuka editor kod VBA dan klik pada Alat yang terletak di bar menu atas.

- Dari sana, pilih Rujukan dan kemudian tatal senarai Rujukan Tersedia untuk mencari Perpustakaan Objek Microsoft Outlook 16.0 .
- Pilih objek dan klik Ok untuk keluar dari senarai Rujukan Tersedia .
Menghantar E-mel Dengan VBA: Tulis Kod dan Laksanakan
Memandangkan anda telah mendayakan objek Outlook dalam Excel VBA, ikuti langkah ini untuk menulis makro Excel dan laksanakannya:
- Pastikan anda menggunakan antara muka editor kod VBA. Sekarang, cari tab Sisip pada menu atas Excel VBA.
- Klik pada Sisipkan dan kemudian pilih Modul untuk memasukkan modul di mana anda boleh menulis kod VBA.
- Sekarang, salin-tampal skrip VBA berikut ke dalam modul yang baru dibuat.
Sub sending_email_with_VBA() Malapkan EmailApp Sebagai Outlook.Application Malapkan Sumber Sebagai String Set EmailApp = Outlook Baharu.Application Malapkan EmailItem Sebagai Outlook.MailItem Set EmailItem = EmailApp.CreateItem(olMailItem) EmailItem.To = "[email protected]" EmailItem.CC = "[email protected]" EmailItem.BCC = "[email protected]" EmailItem.Subject = "Status penghantaran pesanan pelanggan" EmailItem.HTMLBody = "Hai Pasukan," & vbNewLine & vbNewLine & "PFA hamparan untuk pesanan hari ini status" & _ vbNewLine & vbNewLine & _ "Salam," & vbNewLine & _ "Tamal Das" Sumber = This Workbook.FullName EmailItem.Attachments.Add Source EmailItem.Send End Sub
Kod yang disebutkan di atas akan menghantar e-mel menggunakan akaun Outlook anda ke alamat e-mel yang disebut dalam kod.
Kandungan e-mel juga tersedia dalam baris kod EmailItem.HTMLBody . Selain itu, Excel VBA secara automatik akan melampirkan buku kerja sumber anda pada e-mel sebagai lampiran.
Anda boleh membuat perubahan berikut untuk memperibadikan alamat dan teks kandungan e-mel:
- Gantikan semua alamat e-mel dalam petikan dengan kenalan Outlook anda sendiri .
- Sesuaikan teks EmailItem.Subject di dalam petikan mengikut kesesuaian anda.
- Dalam kod EmailItem.HTMLBody , anda boleh menggantikan semua teks dalam tanda petikan menggunakan kandungan anda sendiri.
- Sekarang, jalankan skrip VBA dengan menekan F5 .

Untuk menghantar e-mel dengan VBA berjaya, anda perlu mengkonfigurasi akaun Gmail atau akaun Outlook dalam apl Outlook kendiri suite Microsoft Office. Outlook berasaskan pelayar dalam talian tidak akan berfungsi dengan kod VBA ini.
Kesimpulan
Memandangkan anda telah mengikuti langkah-langkah yang dinyatakan di atas untuk menghantar e-mel dengan VBA, lebih mudah bagi anda untuk mengautomasikan tugas biasa dalam Excel. Contohnya, biarkan fail hamparan menghantar e-mel kepada anda secara automatik apabila rakan usaha sama mengemas kini lembaran kerja. Juga, hantar e-mel automatik kepada pelanggan apabila anda mengemas kini lajur status pesanan dalam Excel.
Jika anda mahukan lebih banyak automasi Excel menggunakan VBA, gunakan pengekodan cap waktu VBA untuk menyimpan log perubahan hamparan.