• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Excelde PDF olarak d sürücüsü içerisine

  • Konbuyu başlatan Konbuyu başlatan yyhy
  • Başlangıç tarihi Başlangıç tarihi

yyhy

Altın Üye
Katılım
3 Aralık 2005
Mesajlar
946
Excel Vers. ve Dili
Microsoft Office 2021 TR
Microsoft 365 TR
Excelde PDF olarak d sürücüsü içerisinde "Daimi" klasörüne kayıt etmek istiyorum. Yol'u gösteremedim. Macroda nereyi düzeltmem gerekir?
Sub otoTekPDF()
Baslik$ = "Yazdır."
Mesaj$ = "Belirlenen sayıya kadar yazdırılacak, Onaylıyormusunuz?"
cevap$ = MsgBox(Mesaj$, 4 + 32 + 0, Baslik$)
If cevap$ = 6 Then
Dim ilk As Integer
Dim son As Integer
Dim S1 As Worksheet
Dim S2 As Worksheet
Set S1 = Sheets("Sorgu")
Set S2 = Sheets("01")

ilk = S1.Range("E11").Value
son = S1.Range("J11").Value
For i = ilk To son
S1.Range("E3").Value = i
S2.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "D:\Daimi\" & i & "_hy.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False 'S2.PrintOut Copies:=1, Collate:=True

Next
MsgBox "Yazdırma İşlemi Gerçekleştirildi.", vbInformation, "Hazırlayan; Adli Büro "
End If

Set S1 = Nothing
Set S2 = Nothing
End Sub
 
Merhaba,
Kırmızı ile işaretlediğiniz alandaki ActiveWorkbook.Path & kısmı fazla. Bu kod ile aktif excel dosyasının bulunduğu konumu alabilirsiniz.
 
ActiveWorkbook.Path & kısmını çıkardım ama hata veriyor.
 
Başka yerde hata yapıyor olmalısınız. Yolla ilgili bir hata yok.
Bir de hata kodun verdiğini söylerken ne hata verdiğini de belirtirseniz hatayla ilgili bir fikrimiz olabilir.
 
Hata veren bölümü resim olarak ekliyorum.
 

Ekli dosyalar

  • Macro hata veren bölüm.jpg
    Macro hata veren bölüm.jpg
    193.7 KB · Görüntüleme: 8
Daimi & "\" olan yeri yazdığınız ilk mesajdaki gibi "D:\Daimi\" olarak düzenleyiniz.
Rich (BB code):
TmpSHdf.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "D:\Daimi\" & ilk & "_" & son & "_Arası Daimi Arama.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
 
Kullandığım dosyaların bazı bölümlerini ekledim. Hali hazırda dosyam bitmedi üzerinde çalışmalar yapıyorum.
Eklediğim dosyalarda PDF olarak yazdırma bölümlerinden; Tek tek PDF yazdırmada sorunum yok güzel PDF olarak belirttiğim aralıkta yazıyor ve sayfalarım düzenli bir şekilde kaydediyor. Çoklu PDF yazdırmada çıktı almak istediğimde ise sağ tarafa ve alt tarafta bazı bilgilerim eksik çıkıyor makro ve sayfa ayaraları yaptımsa da olmadı bir inceleyebilir misiniz? Şimdiden teşekkür ederim.
 

Ekli dosyalar

Daimi & "\" olan yeri yazdığınız ilk mesajdaki gibi "D:\Daimi\" olarak düzenleyiniz.
Rich (BB code):
TmpSHdf.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "D:\Daimi\" & ilk & "_" & son & "_Arası Daimi Arama.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Ayrıca dosya kaydı ile ilgili olan yer için teşekkür ederim. Macroyu uyguladım istediğim gibi çalışıyor. 7 nolu mesajımdaki sorunları çözemedim.
 
Öncelikle 7 nolu mesajınızdaki dosya özel bilgiler içerdiği için kaldırmanızı tavsiye ederim.
Çoklu yazdırma için de aşağıdaki kodu kullanabilirsiniz. Verileri kopyalamak yerine sayfayı kopyalamak daha kolay geldi.
İyi çalışmalar...
Kod:
Sub otoTopluPDF()
Baslik$ = "Yazdır."
Mesaj$ = "Belirlenen sayıya kadar yazdırılacak, Onaylıyormusunuz?"
cevap$ = MsgBox(Mesaj$, 4 + 32 + 0, Baslik$)
If cevap$ = 6 Then
Dim ilk As Integer
Dim son As Integer
Dim S1 As Worksheet
Dim S2 As Worksheet
Dim x As Integer
ReDim isim(0)

Set S1 = Sheets("Sorgu")
Set S2 = Sheets("01")

ilk = S1.Range("E11").Value
son = S1.Range("J11").Value
Application.ScreenUpdating = False
For i = ilk To son
    S1.Range("E3").Value = i
    S2.Copy after:=Sheets(Sheets.Count)
    With ActiveSheet
        .Name = "Temp" & i
        .UsedRange.Value = .UsedRange.Value
        ReDim Preserve isim(x)
        isim(x) = .Name
        x = x + 1
    End With
Next

Sheets(isim).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "D:\Daimi\" & ilk & "_" & son & "_Arası Daimi Arama.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False 'S2.PrintOut Copies:=1, Collate:=True

Application.DisplayAlerts = False
Sheets(isim).Delete
Application.DisplayAlerts = True

Sheets("Sorgu").Select
ErrorHandler:
Application.ScreenUpdating = True

'hy______________________________________
MsgBox "Yazdırma İşlemi Gerçekleştirildi.", vbInformation, "Hazırlayan; Adli Büro "
End If

Set S1 = Nothing
Set S2 = Nothing
End Sub
 
Son düzenleme:
İlginiz için teşekkür ederim ÖmerBey, Dosyamın içerisindeki bilgilerin tamamı hayali bilgilerden oluşmaktadır. Ayrıca dosya silme bölümü bizde gözükmüyor mahsuru varsa kaldırabilir misiniz.
Yazdırma İşlemi bittikten sonra son sayfaya gidip son sayfayı açıyor acaba komutu verdiğim sorgu sayfasında kalması için kodda değişiklik ne yapmam gerekir.
 
Son düzenleme:
Ayrıca dosya kaydetme yolu olarak son verdiğiniz dosyada kod üzerinde nereyi değiştirebiliriz? Örneğin yol olarak D:\Daimi klasörüne kaydettirmek istersek.
 
Konuyu açan üyemizin beyanına göre eklenen dosya içerikleri gerçek bilgi içermemektedir. Bu nedenle kaldırılmasına gerek yoktur.
 
Hüseyin bey teşekkür ederim. Dosyamın işlemlerini bitirdikten sonra eğer forumdan isteyen olursa resmi (egm) kurum adresi veren forum kullanıcılarına özelden göndermek isterim. Eğer sizde uygun görürseniz. Forumda Şikayet Et! ve Düzenleme Bölümü bulunmaktadır. Bu biraz zaman geçtikten sonra düzenle dosya ekle ve bilgi düzenleme yapamıyoruz. Aslında imla hataları ve eksik bilgileri düzenleyebilsek iyi olur kanaatindeyiz. Bu web sitesi kuralları ile ilgili bir şey mi acaba? Eğer web sitesi kuralları ve işleyişiyle ilgili bir şey ise ona da saygı duyarız. Teşekkür ederim. iyi çalışmalar.
 
İsteğiniz doğrultusunda yukarıdaki kodu güncelledim, deneyiniz.
 
ÖmerBey çok teşekkür ederim. İhtiyaca cevap verdi. Elleriniz dert görmesin.
 
Rica ederim, iyi dilekleriniz için teşekkürler.
İyi çalışmalar...
 
Geri
Üst