24/08/2022, 08:48
tarkanaykın
Merhaba arkadaşlar, elimde Excel bünyesinde kullanılan gayet sağlıklı çalışan aşağıda belirttiğim kod bloğu var, klasör oluşturup sayfayı pdf ye çeviriyor ve klasöre atıyor. benim Excel sürümümde sıkıntı olduğundan artık exceli kullanmamaya, bu işlemi de Excel kapalı olacak şekilde Access Vba ile yaptırmayı düşünüyorum, yani yine exceli kullanmış olacağım ama kapalı olacak, excelin içindeki sayfayı Access Vba ile pdf ye çevireceğim, biraz kafa yordum ama aşağıdaki kodda ne gibi değişiklik yapmam gerektiğini çözemedim, bu konuda yardımlarınızı bekliyorum, rica ediyorum, teşekkürler.
'Klasör Olusturma
Dim dosyayolu As String, KLS As Object, Klasor As Object, dosya As Object ', 'i As Long
'For i = 2 To Cells(Rows.Count, 1).End(3).Row
dosyayolu = ThisWorkbook.Path
Set KLS = CreateObject("scripting.filesystemobject")
Set Klasor = KLS.GetFolder(dosyayolu)
'For Each dosya In Klasor.Files
On Error Resume Next
KLS.createfolder (dosyayolu & "\" & Me.avansYili)
'Next dosya
'Next i
On Error Resume Next
Set KLS = CreateObject("scripting.filesystemobject")
KLS.createfolder (dosyayolu & "\" & Me.avansYili & "\" & Me.konusu)
On Error Resume Next
Set KLS = CreateObject("scripting.filesystemobject")
KLS.createfolder (dosyayolu & "\" & Me.avansYili & "\" & Me.konusu & "\" & Me.avansMutemediAdiSoyadi)
ActiveWorkbook.Save
With Worksheets("hizmetIsleriKabulTutanagi")
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=dosyayolu & "\" & Me.avansYili & "\" & Me.konusu & "\" & Me.avansMutemediAdiSoyadi & "\" & _
.Name & ".pdf", OpenAfterPublish:=True
End With
Set KLS = Nothing: Set Klasor = Nothing: Set dosya = Nothing: dosyayolu = vbNullString
MsgBox "Klasörler oluşturuldu"
'Klasör Olusturma
Dim dosyayolu As String, KLS As Object, Klasor As Object, dosya As Object ', 'i As Long
'For i = 2 To Cells(Rows.Count, 1).End(3).Row
dosyayolu = ThisWorkbook.Path
Set KLS = CreateObject("scripting.filesystemobject")
Set Klasor = KLS.GetFolder(dosyayolu)
'For Each dosya In Klasor.Files
On Error Resume Next
KLS.createfolder (dosyayolu & "\" & Me.avansYili)
'Next dosya
'Next i
On Error Resume Next
Set KLS = CreateObject("scripting.filesystemobject")
KLS.createfolder (dosyayolu & "\" & Me.avansYili & "\" & Me.konusu)
On Error Resume Next
Set KLS = CreateObject("scripting.filesystemobject")
KLS.createfolder (dosyayolu & "\" & Me.avansYili & "\" & Me.konusu & "\" & Me.avansMutemediAdiSoyadi)
ActiveWorkbook.Save
With Worksheets("hizmetIsleriKabulTutanagi")
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=dosyayolu & "\" & Me.avansYili & "\" & Me.konusu & "\" & Me.avansMutemediAdiSoyadi & "\" & _
.Name & ".pdf", OpenAfterPublish:=True
End With
Set KLS = Nothing: Set Klasor = Nothing: Set dosya = Nothing: dosyayolu = vbNullString
MsgBox "Klasörler oluşturuldu"