Uygulamalar için Visual Basic veya VBA, güçlü ancak kolay bir programlama dilidir ve Microsoft Excel'i sonuna kadar otomatikleştirmenizi sağlar. Bu tür bir otomasyon, Outlook, PowerPoint ve Word gibi diğer Microsoft uygulamalarını entegre etmek ve üretkenliği artırmak için VBA kodlarını kullanmaktır.
Excel'de VBA ile e-posta göndermek, elektronik tablo veya rapor postalama görevlerini otomatikleştirerek hayatınızı kolaylaştıran böyle bir entegrasyondur. Bu eğitim, takibi kolay adımlarla Excel'den VBA ile e-posta gönderme adımlarında size yol gösterecektir.

Microsoft Outlook Nesne Kitaplığı Aktivasyonu
Excel VBA için bir dış nesne olduğundan, Outlook'un e-posta gönderme nesnesi referansını ayarlamanız gerekir . Şu adımları takip edin:
- Dosya > Farklı Kaydet > bir konum seçip Farklı Kaydetme türünü değiştirerek mevcut Excel dosyasını Makro özellikli bir dosya olarak kaydedin .
- VBA kod düzenleyicisini getirmek için Alt+F11 tuşlarına basın ve üst menü çubuğunda bulunan Araçlar'a tıklayın.

- Oradan Referanslar'ı seçin ve ardından Kullanılabilir Referanslar listesini kaydırarak Microsoft Outlook 16.0 Nesne Kitaplığı'nı bulun .
- Nesneyi seçin ve Kullanılabilir Referanslar listesinden çıkmak için Tamam'a tıklayın .
VBA ile E-posta Gönderme: Kodları Yazın ve Çalıştırın
Artık Excel VBA'da Outlook nesnesini etkinleştirdiğinize göre, Excel makrosunu yazmak ve bunu yürütmek için şu adımları izleyin:
- VBA kod düzenleyici arayüzünde olduğunuzdan emin olun. Şimdi, Excel VBA'nın üst menüsündeki Ekle sekmesine bakın .
- VBA kodlarını yazabileceğiniz bir modül eklemek için Ekle'ye tıklayın ve ardından Modül'ü seçin.
- Şimdi, aşağıdaki VBA komut dosyasını yeni oluşturulan modüle kopyalayıp yapıştırın.
Alt sending_email_with_VBA() EmailApp'ı Outlook Olarak Karart. = "[email protected]" EmailItem.BCC = "[email protected]" EmailItem.Subject = "Müşteri siparişi gönderim durumu" EmailItem.HTMLBody = "Merhaba Ekip," & vbNewLine & vbNewLine & "Bugünün siparişi için PFA elektronik tablosu durum" & _ vbNewLine & vbNewLine & _ "Saygılarımızla," & vbNewLine & _ "Tamal Das" Kaynak = ThisWorkbook.FullName EmailItem.Attachments.Kaynak Ekle EmailItem.Send End Sub
Yukarıda belirtilen kod, Outlook hesabınızı kullanarak kodda belirtilen e-posta adreslerine bir e-posta gönderecektir.
E-posta içeriği, EmailItem.HTMLBody kod satırında da mevcuttur . Ayrıca Excel VBA, kaynak çalışma kitabınızı otomatik olarak e-postaya ek olarak ekleyecektir.
Adresleri ve e-posta gövde metnini kişiselleştirmek için aşağıdaki değişiklikleri yapabilirsiniz:
- Alıntıdaki tüm e-posta adreslerini kendi Outlook kişilerinizle değiştirin .
- Alıntı içindeki EmailItem.Subject metnini uygun gördüğünüz şekilde özelleştirin .
- EmailItem.HTMLBody kodunda tırnak içindeki tüm metinleri kendi içeriğinizi kullanarak değiştirebilirsiniz.
- Şimdi, basarak VBA komut dosyasını çalıştırın F5 .

VBA ile başarılı bir şekilde e-posta göndermek için, Microsoft Office paketinin bağımsız Outlook uygulamasında Gmail hesabını veya Outlook hesabını yapılandırmanız gerekir . Çevrimiçi tarayıcı tabanlı Outlook, bu VBA koduyla çalışmaz.
Çözüm
Artık VBA ile e-posta göndermek için yukarıda belirtilen adımları takip ettiğinize göre, Excel'de sıradan görevleri otomatikleştirmek sizin için daha kolay olacaktır. Örneğin, ortak çalışanlar çalışma sayfasını güncellediğinde elektronik tablo dosyasının size otomatik olarak bir e-posta göndermesine izin verin. Ayrıca Excel'de sipariş durumu sütununu güncellediğinizde müşterilere otomatik e-postalar gönderin.
VBA kullanarak daha fazla Excel otomasyonu istiyorsanız, elektronik tablo değişikliklerinin günlüğünü tutmak için VBA zaman damgası kodlamasını kullanın.