Buton ile otomatik pdf çevir/kaydet ve mail gönder.

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Arkadaşlar Merhaba,

Ekte göndermiş olduğum dosyada sağda oluşturmuş olduğum butonlar ile aşağıdaki işlemleri oluşturmaya çalışıyorum.

1.Buton (Create Pdf File ) taralı bölgeye butonların altında oluşturmuş olduğum kutucuklara yazacağım dosya ismini verecek pdf çevierecek ve masa üstüne kayıt edecek

2.Buton (Create Pdf File & Send Email) taralı bölgeye butonların altında oluşturmuş olduğum kutucuklara yazacağım dosya ismini/mesaj konusu ve mesajı ekleyerek pdf çevirecek ve seçmiş olduğum mail adresine gönderecek,(mail adresini boş seçmiş isem sadece outlook açılacak ben outlook a adresi manual gireceğim.

Bu konuda bana yardımcı olursanız çok sevinirim. Sitede üye başka bir beyefendiden bunları rica ettim ancak iki gündür iş yoğunluyum dolayısıyla kendisine doğru düzgün ve açıklayıcı cevaplar veremediğim için kendisini bezdirdim. Dolayısıyla artık cevap alamıyorum. Yapmak istediklerim tam anlamıyla yukarıda yazdıklarımdır. Yardımcı olursanız duacının olurum. Şimdiden herkese çok teşekkürler....
 

Ekli dosyalar

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Arkadaslar yardimci olabilecek kimse yok mu ? :(
 

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Arkadaslar yardimci olabilecek kimse yokmu ? :(
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,535
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodları deneyiniz.

Kod:
Sub PDF_KAYDET()
    If Range("AX18").Value = "" Then
        MsgBox "Lütfen dosya adını yazınız!", vbCritical
        Exit Sub
    End If

    Yol = CreateObject("WScript.Shell").SpecialFolders("Desktop")
    Dosya_Adi = Range("AX18").Value & ".pdf"

    Range("Print_Area").ExportAsFixedFormat Type:=xlTypePDF, _
    Filename:=Yol & "\" & Dosya_Adi, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

    MsgBox "Dosyanız kayıt edilmiştir."
End Sub

Sub MAIL_GONDER()
    Dim Uygulama As Object
    Dim Yeni_Mail As Object
    
    If Range("AX18").Value = "" Then
        MsgBox "Lütfen dosya adını yazınız!", vbCritical
        Exit Sub
    End If

    Yol = CreateObject("WScript.Shell").SpecialFolders("Desktop")
    Dosya_Adi = Range("AX18").Value & ".pdf"

    Range("Print_Area").ExportAsFixedFormat Type:=xlTypePDF, _
    Filename:=Yol & "\" & Dosya_Adi, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False
    
    Set Uygulama = CreateObject("Outlook.Application")
    Set Yeni_Mail = Uygulama.CreateItem(0)

    With Yeni_Mail
        .Subject = Range("AX14").Value
        .Body = Range("AX21").Value
        .Attachments.Add Yol & "\" & Dosya_Adi
        .Save
        If Range("AX10").Value = "" Then
            .To = ""
            .Display
        Else
            .To = Range("DN17").Value
            .Send
            MsgBox "Mail gönderildi."
        End If
    End With
    
    Set Uygulama = Nothing
    Set Yeni_Mail = Nothing
End Sub
 

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Korhan Bey,

Öncelikle cevapve yardımlarınız için çok teşekkür ederim.

1-Dosyayı pdf e çevirirken dosya konusunda yazdığım ismi vermiyor. Not:(Konu ismini (X4:AG4) hücresinden otomatik alıyorum).

2- Macroyu kaydetmeye kalktığımda aşağıdaki ekte jpeg formatında göndermiş olduğum mesajı alıyorum.

3-Mail gönderilecek kişinin ismi seçilmediğinde pdf e çevrilmiş dosya ismi verilmiş ve konusu yazılmış mail boş olarak outlook da açılmıyor.

4-Daha önceki makroyu kurgulayan kişi ben olmadığım için nasıl yapıldığını anlayamadığımdan mail gönderilecek kişi hücresini AX10 olarak değiştirdim.(Bilginize.) Yeni dosya ve eki aşağıdaki gibidir.


Yardımcı olmanızı rica ederim. Çok teşekkür ederim.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,535
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Üstteki mesajımda ki kodu revize ettim. Tekrar deneyiniz.

Resimdeki uyarı penceresi ise güvenlikle ilgili bir durumdur. Eğer 2003 kullanıyorsanız bu uyarıya yapacak bir şey yok. Sonraki versiyonları kullanıyorsanız aşağıdaki adımları izleyin;

Outlook uygulamasını açın.
Dosya menüsünden SEÇENEKLER seçeneğine tıklayın.
Güven Merkezi - Güven Merkezi Ayarları seçeneğine tıklayın.
Programlı Erişim seçeneğine tıklayın ve "Şüpheli etkinlikler hakkında beni hiçbir zaman uyarma" seçeneğini aktif yaptıktan sonra kodu tekrar deneyin.
 

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Korhan Bey Ellerinize sağlık herşey gayet güzel çalışıyor. Eğer problem değilse son bir ricam olacak sizden. Pdf çevirilen dosyaların çalışma kitabının durduğu dosyanın içine kayıt olması için ekleme yapmanız mümkün müdür ? Söz konusu dosyayı onedrive da tutacağımdan herhangi bir dosya ismi atayamam sanırım. Bunun dışında bana tavsiye edebileceğiniz bir makro eğitim kitabı var mı ? Yani benim anlayabileceğim dilde anlatan.. Yardımcı olursanız çok sevinirim. İyi Çalışmalar...
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,535
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
İki kod içindeki YOL tanımlamasını değiştirirseniz orjinal dosyanızın olduğu klasöre PDF dosyaları kayıt edilir.

Eski hali;
Kod:
Yol = CreateObject("WScript.Shell").SpecialFolders("Desktop")
Yeni hali;
Kod:
Yol = ThisWorkbook.Path
Kitap için özel bir tavsiyede bulanamayacağım. Forumumuzun dersane bölümünü incelemeye başlayabilirsiniz.

Nette arama yaparak bir çok kitaba ulaşabilirsiniz.

Örnek;

http://www.hepsiburada.com/baslangictan-ileri-duzeye-excel-ve-makrolar-p-KFNBESIR006
http://www.kitapyurdu.com/kitap/excelde-makrolar-vba/144858.html
http://www.dr.com.tr/kitap/excelde-makrolar-vba/cenk-ıltir/egitim-basvuru/bilgisayar/urunno=0000000326534
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Bilgi ricası

Sayın fledermaus,
Sayın Korhan Aydın,


İyi geceler. Konu ilgimi çekti.

Aşağıdaki resimde görüleceği gibi, yeni bir kişiye ilişkin eposta adresini nereden, nasıl ekleyebilirim?

Bu konuda beni aydınlatabilir misiniz?

Emek ve katkı veren ve paylaşımda bulunan sizlere teşekkürler.

Sevgi ve saygılar.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,535
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
"DN" sütununa baktığınızda veri doğrulama kaynağını görebilirsiniz. Doğrulamadaki formül alanını genişleterek dilediğiniz gibi kullanabilirsiniz.
 

fledermaus

Altın Üye
Katılım
18 Kasım 2012
Mesajlar
404
Excel Vers. ve Dili
Microsoft Office 365
Altın Üyelik Bitiş Tarihi
04-07-2024
Korhan Bey,

Yardimlariniz icin gercekten cok tesekkur ederim. Bu arada assenucler bey umarim benim sablonumu kullanmayacaksiniz ? Yani umuyorum bu sadece soru amaclidir. Yazdiklarimi yanlis anlamayin sakin ama cok fazla emek verdim. Hayirli kandiller herkese...
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Sayın fledermaus,

Günaydın.

Ben emekli bir kişiyim ve sitemizin sevdalısıyım. "Mail Gönder" komutu ilgimi çektiği için yukarıdaki soruyu sordum.İçiniz rahat olsun.

Emek ve katkılar için bir kez daha teşekkürler.


Sayın Korhan Ayhan üstadım; bu arada, "Send Mail" e tıklayınca ekli resimdeki hata iletisini almaktayım. Nedenini ve nasıl düzeltileceğini bilmiyorum. Yardımınızı rica edeceğim.

Sizlere de iyi kandiller diler ve Ramazan Bayramınızı bugünden kutlarım.
 

Ekli dosyalar

Son düzenleme:

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Yanıt bekliyorum.
 

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,893
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
Sayın fledermaus,

Günaydın.

Ben emekli bir kişiyim ve sitemizin sevdalısıyım. "Mail Gönder" komutu ilgimi çektiği için yukarıdaki soruyu sordum.İçiniz rahat olsun.

Emek ve katkılar için bir kez daha teşekkürler.


Sayın Korhan Ayhan üstadım; bu arada, "Send Mail" e tıklayınca ekli resimdeki hata iletisini almaktayım. Nedenini ve nasıl düzeltileceğini bilmiyorum. Yardımınızı rica edeceğim.

Sizlere de iyi kandiller diler ve Ramazan Bayramınızı bugünden kutlarım.
. . .

Kırmızı ile belirttiğim ilavelere yaparak deneyiniz.

Kod:
.range("AX14")[COLOR="Red"].value[/COLOR]
.range("AX21")[COLOR="Red"].value[/COLOR]
. . .
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Teşekkür ve yeni hata iletisi

Sayın Hüseyin Çoban,


Üstadım değerli zamanınızı ayırarak verdiğiniz yanıt için teşekkür ederim.

İletinize eklediğiniz kodları gerekli satırlara yazdım.

Bu kez de başka bir hata mesajı aldım ve resmi ile birlikte dosyayı WinRar içine ekledim.


Sevgi ve saygılar.
 

Ekli dosyalar

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,893
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
. . .

range("DN17") içinde value ekleyin.

range("DN17").value

. . .
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
16. iletinizdeki kodu parçasına eklemeyi yaptım. Sonuç değişmedi.

15. iletime eklediğim dosya içindeki resimde gözüken hata iletisini alıyorum.

İlginiz için teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,535
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bazen versiyon farklarında bu tarz hatalar oluşabiliyor. Bende uyarınız üzerine üstteki mesajımda ki koda ".Value" eklentilerini yaptım.
 

Emir Hüseyin Çoban

Destek Ekibi
Destek Ekibi
Katılım
11 Ağustos 2008
Mesajlar
5,893
Excel Vers. ve Dili
Office 2013 Tr - Win10 x64
. . .

Tablonun tamamını incelemedim ama gönderilecek mail adresini
AX10 hücresinden almayacak mı.

Şu şekilde deneyiniz.
Kod:
.To = Range("AX10").Value
. . .
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,522
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Değerli Üstadım,


Son eklemeyi de yaptım sonuç olumsuz.

Bu dosya bana ait değil, sadece "Send Mail" düğmesine tıklanınca yollanacak email ve eki pdf dosyasının yerine ulaşıp ulaşmadığını görebilmek ve gerektiğinde kullanabilmek için konuya ilgi duydum.


Bu ramazan gününde değerli zamanınızı daha fazla almak istemiyorum.


İlginiz ve inceliğiniz için bir kez daha teşekkürler.

Sevgi ve saygılar.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst