Seçilen bölgeyi kaydetmeden pdf olarak mail iletme

Katılım
12 Şubat 2014
Mesajlar
211
Excel Vers. ve Dili
office2013
Altın Üyelik Bitiş Tarihi
15-12-2021
Merhaba,

Excel sayfasında seçilen bölümü kaydetmeden mail ile pdf olrak iletmek istiyorum. Yardımcı olabilir misiniz?
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
61
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
pc nizde outlook kurulu mu. excelinizde outlook tan mail gönderme kodları hazır sadece pdf kısmı mı eklenecek. yoksa outlookdan mail atma kodu da mı yazılacak.
 
Katılım
12 Şubat 2014
Mesajlar
211
Excel Vers. ve Dili
office2013
Altın Üyelik Bitiş Tarihi
15-12-2021
pc nizde outlook kurulu mu. excelinizde outlook tan mail gönderme kodları hazır sadece pdf kısmı mı eklenecek. yoksa outlookdan mail atma kodu da mı yazılacak.
Exel sayfasında belli bir bölümü seçtikten sonra seçilen dökümü pdf olrak iletmek istiyorum. Seçilen ksıım dışındakileri göndermesini istemiyorum. Excel de sayfayı komple pdf olrak iletiyor, ama ben sadece seçilen bölümü göndermesini istiyorum.
 
Katılım
6 Mart 2024
Mesajlar
168
Excel Vers. ve Dili
Excel 2010 TR & Excel 2016 TR
Merhaba,
Baskı Ön izleme de ne görüyorsanız, dışarıya PDF olarak ta o çıkıyor.

PDF e dönüştürmek istediğiniz alanı seçin
Excel menüden - Sayfa Düzeni - Yazdırma Alanı - Yazdırma alanı Belirle yapın
Farklı kaydet le Excel i PDF e dönüştürün
mail hazırlayın PDF dosyanızı ek olarak ekleyin gönderin
Excel e geri dönün
Excel menüden - Sayfa Düzeni - Yazdırma Alanı - Yazdırma alanı Temizle yapın
 
Katılım
6 Mart 2024
Mesajlar
168
Excel Vers. ve Dili
Excel 2010 TR & Excel 2016 TR
VBA ile yapmak isterseniz.
C++:
Sub RangePdfMail()

    Dim selectedRange As Range

    ' Kullanıcıdan hücre aralığı seçmesini isteyin
    On Error Resume Next ' Kullanıcı seçim yapmadıysa hata almamak için
        Set selectedRange = Application.InputBox("Lütfen Mail Göndermek istediğiniz hücre aralığını seçin:", Type:=8)
    On Error GoTo 0 ' Hata işleme kapatıldı
    
    ' Eğer seçim yapılmazsa, işlem iptal edilir
    If selectedRange Is Nothing Then
        MsgBox "İşlem iptal edildi!" & vbCrLf & vbCrLf & "PDF oluşturulmadı ve Mail gönderilmedi.", vbInformation, "İptal Edildi"
        Exit Sub
    End If
    
    ' Seçilen aralığı PDF olarak kaydet
    Application.DisplayAlerts = False ' tek hücre seçilirse uyarı verme
        ActiveSheet.PageSetup.PrintArea = selectedRange.Address
    Application.DisplayAlerts = True
    
    ' PDF dosyasının kaydedileceği yolu belirleyin
    Dim PdfPath As String
    PdfPath = Environ("TEMP") & "\RangePdfMail.pdf"
    
    ' PDF dosyasını belirtilen yere kaydet
    ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=PdfPath, _
        Quality:=xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    
    ' E-posta gönderme işlemi için gerekli parametreler
    Dim Subject As String
    Dim Body As String
    Dim ToAddress As String
    Dim CCAddress As String
    Dim BCCAddress As String
    Dim OutApp As Object
    Dim OutMail As Object
    
    ' E-posta parametrelerini ayarlayın
    Subject = "PDF Dosyası"
    Body = "Merhaba, ekli PDF dosyasını inceleyebilirsiniz."
    ToAddress = "ornek@example.com"   ' Alıcı e-posta adresi
    CCAddress = "cc@example.com;cc01@example.com;cc02@example.com" ' CC'ye eklemek istediğiniz adresler
    BCCAddress = "bcc@example.com;bcc01@example.com" ' BCC'ye eklemek istediğiniz adresler
    
    ' Outlook uygulamasını başlatın
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0) ' Yeni bir e-posta oluşturun
    
    ' E-posta özelliklerini ayarlayın
    With OutMail
        .To = ToAddress
        .CC = CCAddress
        .BCC = BCCAddress
        .Subject = Subject
        .Body = Body
        .Attachments.Add PdfPath ' PDF dosyasını ekleyin
        '.Attachments.Add "C:\Dosya tam yolu\Dosya01.pdf" ' Fazladan dosya eklemek isterseniz buraya ekleyebilirsiniz
        .Display ' E-posta penceresini gösterir. .Send ile direkt gönderebilirsiniz
    End With
    
    ' Outlook nesnelerini temizle
    Set OutMail = Nothing
    Set OutApp = Nothing
    
    ' Sayfanın baskı alanını temizleyin
    ActiveSheet.PageSetup.PrintArea = ""
    
End Sub
 
Son düzenleme:
Üst