ockucukay
Altın Üye
- Katılım
- 29 Aralık 2005
- Mesajlar
- 862
- Excel Vers. ve Dili
- Office 365 Türkçe
- Altın Üyelik Bitiş Tarihi
- 02-07-2025
Merhaba
Ekte gördüğünüz dosyada aşağıdaki kodu sayfayı pdf yaparak mail atmak için kullanmak istedim. PDF oluşturuyor ama " Set OutApp = New Outlook.Application" bu satırda yükseltme gerekiyor hatası verip maili atmıyor. Kullandığım Outlook Microsoft Office 2010 Professional Plus paketinin bir parçası, buna uyumlu olması için ne yapabilirim? Yardımlarınız için teşekkür ederim.
Sub PDF_KAYDET_MAIL_GONDER()
'Excel ve PDF dökümanımızın yol tanımlamalarını yapıyoruz
Dim dosyaPath As String, pdfPath As String
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
dosyaPath = ThisWorkbook.Path
pdfPath = "Complaint.pdf"
'PDF dosyamızı oluşturuyoruz
Sheets("Giriş Formu Baskı (ing)").ExportAsFixedFormat Type:=xlTypePDF, Filename:=dosyaPath & "\" & pdfPath, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
'Sistemimide yüklü Mail uygulaması Outlook olduğu için nesneyi ona göre yaratıyorum
'Set dam = CreateObject("Outlook.Application").CreateItem(0)
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
'Yarattığım nesneye göre mail header'ını oluşturuyorum
'With dam
'TO,CC,bCC ve Subject içeriklerini Ayarlar sayfasında, kullanıcıdan çekiyoruz
.To = ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("AK1")
'.CC = ThisWorkbook.Sheets("Ayarlar").Range("C4")
'.BCC = ThisWorkbook.Sheets("Ayarlar").Range("C5")
.Subject = ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("F3") & " Complaint"
'Mail içeriğini de Ayarlar sayfasından çekebilirdik ama direkte yazma örneğimiz olsun
.Body = "Dear," & ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("AK3") & vbNewLine & _
" Please find the attached complaint for " & ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("F3") & "." & _
" Please send us your 8D report according to the 1-2-14 rule." & _
vbNewLine & vbNewLine
'Dosyayı ekledik
.Attachments.Add dosyaPath & "\" & pdfPath
've gönderdik
.Send
End With
MsgBox "Email gönderildi"
End Sub
Ekte gördüğünüz dosyada aşağıdaki kodu sayfayı pdf yaparak mail atmak için kullanmak istedim. PDF oluşturuyor ama " Set OutApp = New Outlook.Application" bu satırda yükseltme gerekiyor hatası verip maili atmıyor. Kullandığım Outlook Microsoft Office 2010 Professional Plus paketinin bir parçası, buna uyumlu olması için ne yapabilirim? Yardımlarınız için teşekkür ederim.
Sub PDF_KAYDET_MAIL_GONDER()
'Excel ve PDF dökümanımızın yol tanımlamalarını yapıyoruz
Dim dosyaPath As String, pdfPath As String
Dim OutApp As Outlook.Application
Dim NewMail As Outlook.MailItem
dosyaPath = ThisWorkbook.Path
pdfPath = "Complaint.pdf"
'PDF dosyamızı oluşturuyoruz
Sheets("Giriş Formu Baskı (ing)").ExportAsFixedFormat Type:=xlTypePDF, Filename:=dosyaPath & "\" & pdfPath, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
'Sistemimide yüklü Mail uygulaması Outlook olduğu için nesneyi ona göre yaratıyorum
'Set dam = CreateObject("Outlook.Application").CreateItem(0)
Set OutApp = New Outlook.Application
Set NewMail = CreateItem(olMailItem)
With NewMail
'Yarattığım nesneye göre mail header'ını oluşturuyorum
'With dam
'TO,CC,bCC ve Subject içeriklerini Ayarlar sayfasında, kullanıcıdan çekiyoruz
.To = ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("AK1")
'.CC = ThisWorkbook.Sheets("Ayarlar").Range("C4")
'.BCC = ThisWorkbook.Sheets("Ayarlar").Range("C5")
.Subject = ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("F3") & " Complaint"
'Mail içeriğini de Ayarlar sayfasından çekebilirdik ama direkte yazma örneğimiz olsun
.Body = "Dear," & ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("AK3") & vbNewLine & _
" Please find the attached complaint for " & ThisWorkbook.Sheets("Giriş Formu Baskı (ing)").Range("F3") & "." & _
" Please send us your 8D report according to the 1-2-14 rule." & _
vbNewLine & vbNewLine
'Dosyayı ekledik
.Attachments.Add dosyaPath & "\" & pdfPath
've gönderdik
.Send
End With
MsgBox "Email gönderildi"
End Sub
Ekli dosyalar
-
423.2 KB Görüntüleme: 5