Excel ile mail atmak
Excel ile mail göndermek
Excel ile elektronik posta göndermek.
Excel VBA ortamında aşağıdaki kod ile bir elektronik postayı göndermek mümkündür. Bilgisayarda Microsoft Outlook'un yüklü olması gerekir.
Gerekli Referansların eklenmesi gerekir.
Microsoft Office ya da Microsoft Outlook
Kodlama işleminde önce nesneler tanımlanır.
Ardından Outlook nesnesi metotları aracılığıyla gönderilecek mail adresine Outlook aracılığıyla mail gönderilir.
Sub mail1()
' nesnelerin tanımlanması
' bu nesnelerin kullanılması için Referansların Microsoft Outlook ya da Office eklenmesi
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.To = "[email protected]"
.CC = ""
.BCC = ""
.Subject = "deneme 2"
.Body = "excel vba ile deneme 2"
' ayrıca path ile belirtilen diğer bir dosya
' .Attachments.Add ("D:\test.txt")
' .Attachments.Add Application.ActiveWorkbook.FullName
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
Bir dosya eklemek için
.Attachments.Add ("D:\test.txt")
Kendi dosyasını atmak için:
.Attachments.Add Application.ActiveWorkbook.FullName
Bir alanı göndermek için bir Range nesnesi tanımlanır ve HTMLBody özelliği aracılığıyla veri alanı HTML'e çevrilir. Bunu yapmak için verilerin geçici bir dosya üzerinden HTML sayfaya çevrilmesi gerekmektedir.
Bunu internet üzerinde bulduğum kodlardan kullandım.
.HTMLBody = RangetoHTML(Rng)
RangetoHTML fonksiyonunu Sub'ın altına eklemek gerekir.
NOT: RangetoHTML fonksiyonun kodu Internet üzerinde Ron de Bruin sitesinde ve diğer kaynaklardan bulunabilir.
Faruk Çubukçu - Bilgi Teknolojileri Danışmanlık
www.farukcubukcu.com www.excelakademi.com