Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > EXCEL-Soruları > Makro-VBA
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Makro-VBA Makro veya VBA ile ilgili sorularınızı buraya gönderebilirsiniz.
Dosya ekleyebilirsiniz

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 14-11-2017, 08:32   #1
erdaldurmus
Altın Üye
 
Giriş: 29/12/2007
Şehir: erzurum
Mesaj: 3
Excel Vers. ve Dili:
2013
Varsayılan Excel Sayfalarını Makro ile PDF olarak dışarı çıkarma

Merhaba;

Aşağıdaki kod çalışma içerisindeki sayfaları xlsx formatında masaüstüne çıkarmaktadır.
Bu kodu çalışma sayfası içerisindeki sayfaları pdf olarak dışarı çıkaracak şekilde nasıl yapabiliriz.
Pdf dosya adını her sayfanın B6 hücresinden alacak. Masaüstüne değilde masaüstünde PDF adında bir klasör oluşturup içine pdfleri aktaracak şekilde nasıl yapabiliriz.

İlginiz ve yardımlarınız için şimdiden teşekkürler.


Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub SayfaDışarıÇık()

Application.ScreenUpdating = False

For i = 1 To Sheets.Count

Sheets(i).Select
Dosya = CreateObject("Wscript.Shell").SpecialFolders.Item("Desktop") & _
Application.PathSeparator & Sheets(i).Name & Sheets(i).[D4] & ".xlsx"

ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=Dosya
ActiveWorkbook.Close

Next i

Application.ScreenUpdating = True

End Sub
erdaldurmus Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 08:43   #2
bmutlu966
Altın Üye
 
bmutlu966 kullanıcısının avatarı
 
Giriş: 26/01/2006
Mesaj: 326
Varsayılan

Sub SayfaDışarıÇık()

Application.ScreenUpdating = False

For i = 1 To Sheets.Count

Sheets(i).Select
Dosya = CreateObject("Wscript.Shell").SpecialFolders.Item( "Desktop") & _
Application.PathSeparator & Sheets(i).Name & Sheets(i).[D4] & ".pdf"

ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=Dosya
ActiveWorkbook.Close

Next i

Application.ScreenUpdating = True

End Sub
bmutlu966 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 08:48   #3
erdaldurmus
Altın Üye
 
Giriş: 29/12/2007
Şehir: erzurum
Mesaj: 3
Excel Vers. ve Dili:
2013
Varsayılan

Alıntı:
bmutlu966 tarafından gönderildi Mesajı Görüntüle
Sub SayfaDışarıÇık()

Application.ScreenUpdating = False

For i = 1 To Sheets.Count

Sheets(i).Select
Dosya = CreateObject("Wscript.Shell").SpecialFolders.Item( "Desktop") & _
Application.PathSeparator & Sheets(i).Name & Sheets(i).[D4] & ".pdf"

ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=Dosya
ActiveWorkbook.Close

Next i

Application.ScreenUpdating = True

End Sub
Teşekkür ederim.Bunu bende denemiştim ancak istediği tam olarak bu değil. Bu çalışma masaüstüne çıkarılan pdf leri bozuk çıkarıyor. Dosyalar açılmıyor.
erdaldurmus Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 08:55   #4
askm
Altın Üye
 
Giriş: 04/06/2005
Şehir: k.maraş
Mesaj: 1,594
Excel Vers. ve Dili:
2010-2016
Varsayılan

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub KOD_PDF()
Application.ScreenUpdating = False
On Error Resume Next
yol = Environ("USERPROFILE") & "\Desktop\"
For i = 1 To Sheets.Count
    isim = [b6]

    Sheets(i).Select
    
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    yol & "/" & isim & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True
Next i
Application.ScreenUpdating = True
End Sub
__________________
excel 2010- türkçe
askm Çevrimiçi   Alıntı Yaparak Cevapla
Eski 14-11-2017, 11:59   #5
erdaldurmus
Altın Üye
 
Giriş: 29/12/2007
Şehir: erzurum
Mesaj: 3
Excel Vers. ve Dili:
2013
Varsayılan

Alıntı:
askm tarafından gönderildi Mesajı Görüntüle
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub KOD_PDF()
Application.ScreenUpdating = False
On Error Resume Next
yol = Environ("USERPROFILE") & "\Desktop\"
For i = 1 To Sheets.Count
    isim = [b6]

    Sheets(i).Select
    
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    yol & "/" & isim & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True
Next i
Application.ScreenUpdating = True
End Sub
Emeğiniz için teşekkür ederim.
erdaldurmus Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 12:02   #6
askm
Altın Üye
 
Giriş: 04/06/2005
Şehir: k.maraş
Mesaj: 1,594
Excel Vers. ve Dili:
2010-2016
Varsayılan

Rica ederim. Kolay gelsin.
__________________
excel 2010- türkçe
askm Çevrimiçi   Alıntı Yaparak Cevapla
Eski 14-11-2017, 20:26   #7
cem116
 
Giriş: 12/11/2010
Şehir: istanbul
Mesaj: 39
Excel Vers. ve Dili:
2007 türkçe
Varsayılan

Alıntı:
askm tarafından gönderildi Mesajı Görüntüle
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub KOD_PDF()
Application.ScreenUpdating = False
On Error Resume Next
yol = Environ("USERPROFILE") & "\Desktop\"
For i = 1 To Sheets.Count
    isim = [b6]

    Sheets(i).Select
    
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    yol & "/" & isim & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True
Next i
Application.ScreenUpdating = True
End Sub
iki gündür aradığım şeyi bugün sayenizde buldum Emeğiniz için çok teşekkürler ama benim bundan biraz daha farklı bir şeye ihtiyacım var. Şöyle ki benim dosyamda 25 sayfa var, 1.sayfa ile işim yok, orada çünkü veri girişleri ve yazdır ,kaydet gibi butonlarım var. Ama diğer sayfaları tek tek pdf e dönüştürebileceğim gibi, örneğin 2 ve 3 ü birlikte aynı pdf te, ya da 6-7 yi birlikte aynı pdfte kaydetmeye ihtiyacım var. Bunu yapmamız mümkün mü acaba ? ya da basitçe özetlersek, hangi sayfaları pdf yapmak istediğimizi sorsa ve istediğimiz sayfaları seçerek ister birlikte ister tek tek pdf olarak kaydedebilsek ? şimdiden teşekkürler...
cem116 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 21:27   #8
cem116
 
Giriş: 12/11/2010
Şehir: istanbul
Mesaj: 39
Excel Vers. ve Dili:
2007 türkçe
Varsayılan

Yardımcı olabilecek kimse var mı acaba ?
cem116 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 22:47   #9
cem116
 
Giriş: 12/11/2010
Şehir: istanbul
Mesaj: 39
Excel Vers. ve Dili:
2007 türkçe
Varsayılan

Alıntı:
askm tarafından gönderildi Mesajı Görüntüle
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub KOD_PDF()
Application.ScreenUpdating = False
On Error Resume Next
yol = Environ("USERPROFILE") & "\Desktop\"
For i = 1 To Sheets.Count
    isim = [b6]

    Sheets(i).Select
    
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    yol & "/" & isim & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True
Next i
Application.ScreenUpdating = True
End Sub
bu kodu kullanıyorum tek yaptığım şey b6 yerine bende dosya isimleri a2 hücresinde olduğu için o kısmı a2 ile değiştirmek. Her sayfayı ayrı ayrı pdf haline getiriyor. Ancak adlandırma yaparken iş karışıyor. periyodik olarak devam ediyor mu bilmiyorum ama gördüğüm kadarıyla her sayfaya o saydaki a2 hücresindeki ismi değil de, bir önceki sayfada a2 de yazan ismi vererek kaydediyor. Bunu nasıl düzeltebilirim ?
cem116 Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-11-2017, 22:52   #10
Korhan Ayhan
Moderatör
 
Korhan Ayhan kullanıcısının avatarı
 
Giriş: 15/03/2005
Şehir: ANTALYA
Mesaj: 22,633
Excel Vers. ve Dili:
OFFICE 2013-2016 PRO TR
Varsayılan

Bu satırı;

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sheets(i).Select
Bu satırın altına alıp deneyin.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sheets(i).Select
__________________
.
.
.

Soru sormadan önce forumumuzun aşağıdaki
bölümlerini incelediğinizde birçok sorunuza yanıt bulabilirsiniz.


Excel Dersanesi
Uygulamalı Excel Eğitimi
Excel İçin Örnek Uygulamalar
Video Dersane (***Altın Üyelere Özel***)

Lütfen sorularınızın çözümlendiğine dair geri dönüş mesajı yazınız...!
Lütfen yazım ve forum kurallarına uyalım...!
Lütfen sorularımızı açık ve net bir dille ifade edelim...!



FORUM KURALLARI
Korhan Ayhan Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 12:12


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım - Tarot Falı - invest in turkey - Lingerie - Dyeing Machine - Karton Bardak- Çorlu Özel Eğitim- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Araç Takip- Çorlu Su Arıtma- Boru Profil- Gebze Emlak- Beylikdüzü Temizlik- İstanbul Burun Estetiği- Bakır Sülfat- Rampa- Rotary- Çorlu İnternet Sitesi- youngblood- Çorlu Palet- Çerkezköy Palet- Çorlu Prefabrik- Çorlu Sürücü Kursu- Çorlu Sandviç Panel- Şişli Avukat- Korona Test Kalemi- Çorlu Vinç- Çorlu Pimapen Tamiri-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden