ワークシートを1つのPDFファイルに1つのコードで印刷します。 「保存されていない文書」とデバッグコードで、ここで私を取る:私はこれと同じエクセルファイルからPDFへの別の印刷をしようとすると、オープンこのPDFファイルでは、私はVBのエラーを取得するHEREExcel VBScriptを開いて、以前に印刷したPDFを別のPDFに印刷する前に閉じる
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, filename:= _
strFilename & " " & wedate_text & " Time", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
はコードです:
Sub PrintAnadarkoTicketsToPDF()
Worksheets("Cover").Visible = False
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Application.DisplayStatusBar = False
Application.EnableEvents = False
Dim strFilename As String
Dim rngRange As Range
Dim wedate As Date
Dim wedate_text As String
Set rngRange = Worksheets("Cover").Range("A5")
strFilename = rngRange.Value
wedate = Worksheets("Cover").Range("B24").Value
wedate_text = Format$(wedate, "mm.dd.yyyy")
Dim myArray() As Variant
Dim i As Integer
Dim j As Integer
j = 0
For i = 1 To Sheets.Count
If Sheets(i).Visible = True Then
ReDim Preserve myArray(j)
myArray(j) = i
j = j + 1
End If
Next i
Sheets(myArray).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, filename:= _
strFilename & " " & wedate_text & " Time", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
Worksheets("Cover").Visible = True
Sheets(1).Select
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.DisplayStatusBar = True
Application.EnableEvents = True
End Sub
私の質問は次のとおりです。スクリプトをクラッシュせずにこの2番目のPDFを印刷するにはどうすればよいですか?以前のPDFを閉じるか、別のファイル名で2番目のPDFを作成したいと思います。提案していただきありがとうございます。 Randy
あなたは[これ](http://stackoverflow.com/questions/25714915/check-if-a-certain-pdf-file-is-open-and-close-it)解決策を試しましたか? –
あなたは、拡張子と共に有効なファイル名を提供していないと思いますが、以下のような有効なファイル名を提供します: "c:\ path \ filename.pdf"。 –
@Kiran Marojuファイル内のセル参照を介してファイル名がアセンブルされています。 – Randy