Excel Tüm Kitabı Makro Kaydetme

Katılım
30 Haziran 2015
Mesajlar
51
Excel Vers. ve Dili
Office 2013- türkçe
iyi günler arkadaşlar;

tüm çalışma kitabını pdf olarak kaydetmeye çalışıyorum ancak hata veriyoru. makro kaydet yöntemi ile yapmaya çalıştım hatam nerede acaba?


Sub MAKROPDFKAYDET()
'
' MAKROPDFKAYDET Makro
'

'
Sheets(Array("Sayfa1", "Sayfa2", "Sayfa3")).Select
Sheets("Sayfa1").Activate
ChDir "C:\Users\YUCEL.CICEKCIOGLU\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\YUCEL.CICEKCIOGLU\Desktop\DENEMEKİTAP.pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("Sayfa1").Select
Range("D11").Select
End Sub



DÜZELTME : BİLMEDİĞİM BİR SEBEPTEN DOLAYI DEBUG SAYFASINI İPTAL DEYİP ÇIKTIM VE PDF OLARAK KAYDEDİYOR TÜM SAYFALARI SEÇ DEDİĞİM ŞEKİLDE, ANCAK DAHA SONRA AŞAĞIYA SAYFA,3,4,5 EKLEDİĞİM ZAMAN YALNIZCA İLK 3 SAYFAYI ALIYOR.
 
Son düzenleme:

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Bu şekilde deneyin.
Yol ve kls tanımlarını kontrol edersiniz. Belirlediğiniz yoldaki Deneme adında klasöre kayıt yapar.

Kod:
Sub Pdf_Kaydet()

    Dim yol As String, kls As String, i As Integer
    
    yol = "C:\Users\YUCEL.CICEKCIOGLU\Desktop" [COLOR="Green"]'dosyanın kaydedileceği yol[/COLOR]
    kls = yol & "\[COLOR="Red"]Deneme[/COLOR]\" [COLOR="green"]'dosyanın kaydedileceği yoldaki klasör[/COLOR]
    
    For i = 1 To Worksheets.Count
        ChDir yol
        Sheets(i).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            kls & Sheets(i).Name & ".pdf", Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, IgnorePrintAreas:=False
    Next i
        
End Sub
.
 
Katılım
30 Haziran 2015
Mesajlar
51
Excel Vers. ve Dili
Office 2013- türkçe
hocam şu kısıma tek tek elle c:\desktop... vb gibi yazmak mı gerekir yoksa püf noktası var mıdır çok yeniyim henüz sorularımı mazur görün
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Tek tek yazmaktan kastınızı anlamadım.

Masa üstüne "Deneme" adında bir klasör oluşturun.
Kodlar mevcut haliyle masa üstünde "Deneme" adlı klasöre tüm sayfaları ayrı ayrı pdf formatında kayıt yapacaktır.
 
Katılım
30 Haziran 2015
Mesajlar
51
Excel Vers. ve Dili
Office 2013- türkçe
Sub pdfkaydet()
'
' pdfkaydet Makro
'

'
Sheets.Select
Sheets("Sayfa1").Activate
ChDir "C:\Users\YUCEL.CICEKCIOGLU\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\YUCEL.CICEKCIOGLU\Desktop\Kitap2.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
Sheets("Sayfa1").Select
Range("K18").Select
End Sub

hocam şu şekilde Sheets(array) kısmını Sheets.select yaptığım zaman düzeldi şuanda kaç sayfa eklersem onları da tanıyıp kaydediyor. burada acemice bir sorum olacak başta burayı Sheets(ActiveWorkbook).Select olarak denedim mantık olarak VBA kodlama dili bilmiyorum ancak sayfalar(aktifkitap) şeklinde mantık kurdum ancak olmadı. bu tip durumlarda CTRL+Space yararını görebilir miyiz? ne durumlarda kullanırız yoksa kodlama bilmeden bu problemlerin çözümünü aramak biraz hayal midir? makro kullanmaya makro kaydet yöntemi ile başladım açıkçası.


bir başka sorum ise makro kaydet yöntemi ile sayfayı seçip gözden geçir/sayfayı koru diyerek şifreleri girdim ve tamam dedim. kısayol tanımladım tüm sayfalara aynı işlemi uyguladım ve kilitlendi, ancak tek tek seçip sayfa korumasını kaldır dedim ve şifre sormadan kaldırdı bu problemin sebebi nedir hocam? forumda yeniyim ve biraz konu kirliliği yarattım gibi, konu içinde başka soru uygunsuz ise yeni konuda açabilirim mesajımı düzeltip lütfen beni uyarınız
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
1-)Makro kaydet yöntemi ile ilerlemek doğru bir mantık.
Yukarıda benim verdiğim kod. Sayfa sayısı kadar döngü oluşturup sırayla sayfa adına göre kayıt yapar.

2-)Şifre kısmını boş geçmiş olabilirsiniz. Çünkü sayfa korurken şifre verdiyseniz, çözerken de muhakkak şifre sorar.

.
 
Katılım
30 Haziran 2015
Mesajlar
51
Excel Vers. ve Dili
Office 2013- türkçe
1-)Makro kaydet yöntemi ile ilerlemek doğru bir mantık.
Yukarıda benim verdiğim kod. Sayfa sayısı kadar döngü oluşturup sırayla sayfa adına göre kayıt yapar.

2-)Şifre kısmını boş geçmiş olabilirsiniz. Çünkü sayfa korurken şifre verdiyseniz, çözerken de muhakkak şifre sorar.

.
hocam çok eminim şifre koydum tamam dedim ve kayıt yapmayı durdurdum, ctrl+q tuşunu kısayol yaptım, tek tek tüm sayfaları seçerek ctrl+q ile kilitledim ve kontrol ettim kilitlendiğini, sonra korumayı kaldır dedim ve şifre sormadı, dosyayı buraya nasıl atacağımı bilemiyorum.
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
hocam şu şekilde Sheets(array) kısmını Sheets.select yaptığım zaman düzeldi şuanda kaç sayfa eklersem onları da tanıyıp kaydediyor. burada acemice bir sorum olacak başta burayı Sheets(ActiveWorkbook).Select olarak denedim mantık olarak VBA kodlama dili bilmiyorum ancak sayfalar(aktifkitap) şeklinde mantık kurdum ancak olmadı.
Kod:
ActiveWorkbook.Sheets.Select
Komutu ile tüm sayfaları seçebilirsiniz.

---------------------------------------------------------

Dosya eklemek için:

www.dosya.tc

Dosya ekleyip yükleme linkini paylaşabilirsiniz.

.
 
Katılım
30 Haziran 2015
Mesajlar
51
Excel Vers. ve Dili
Office 2013- türkçe
http://s4.dosya.tc/server5/d82060/DENEMEKITAP.rar.html

hocam ekteki dosyada makro kaydet dedikten sonra gözdengeçir/sayfayı koru seçtim ve şifre girdim 2 defa, ctrl+q kısayol tanımladım ve ikisini de kilitledim, ancak sağ tuş sayfayı kilitle deyince direk açılıyor, vba görüntülediğim zaman da şifreleme işi ile ilgili birşey görünmüyor sanırım.
 
Üst