Sub PdfKaydet()
Dim bukitap As Workbook
Set bukitap = ThisWorkbook
Dim yol As String, isim As String, XD1 As Integer, XD As Variant
yol = bukitap.Path: XD1 = 0: isim = Replace(Sheets("Liste").[A1].Text, "/", " ")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.Calculation = xlCalculationManual
For Each XD In bukitap.Sheets
If XD.Name <> "Veri" And XD.Name <> "Liste" And XD.Name <> "Ortalama" And XD.Name <> "Data" Then
bukitap.Sheets(XD.Name).Rows.EntireRow.Hidden = False
sonsut = 27: If XD.Name = "Tüm" Then sonsut = 28
If bukitap.Sheets(XD.Name).Cells(9, sonsut).Value = "" Then GoTo 10
For XDs = bukitap.Sheets(XD.Name).Cells(Rows.Count, sonsut).End(3).Row To 9 Step -1
If bukitap.Sheets(XD.Name).Cells(XDs, sonsut).Value = "" Then _
bukitap.Sheets(XD.Name).Rows(XDs).Hidden = True
Next
XD1 = XD1 + 1
If XD1 = 1 Then
XDD = 1: bukitap.Sheets(XD.Name).Copy
Else: bukitap.Sheets(XD.Name).Copy After:=ActiveWorkbook.Sheets(1)
XDD = ActiveWorkbook.Sheets.Count
Sheets(ActiveSheet.Name).Move After:=Sheets(XDD)
End If
End If
10: Next
If XD1 >= 1 Then
ActiveWorkbook.Worksheets.Select
ActiveWorkbook.Sheets(1).ExportAsFixedFormat xlTypePDF, yol & "\" & isim & ".pdf"
ActiveWorkbook.Close False
End If
For Each XD In bukitap.Sheets: bukitap.Sheets(XD.Name).Rows.EntireRow.Hidden = False: Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.Calculation = xlCalculationAutomatic
If XD1 >= 1 Then
MsgBox "İşlem Tamamlandı." & vbLf & vbLf & _
XD1 & " adet sayfa için " & isim & ".pdf" & vbLf & _
"isimli belge oluşturuldu", vbInformation, "::.. Ömer BARAN ..::"
Else: MsgBox "PDF yapılacak sayfa yok.", vbCritical, "::.. Ömer BARAN ..::"
End If
End Sub