2016-12-14 1 views
0

Ich bin neu in VBA und weiß nicht, wie ich erreichen soll, was ich möchte.Vorhandenes Makro ändern, um stattdessen in PDF zu drucken

Kann mir jemand sagen, wie man den untenstehenden Makro-Ausdruck statt mit dem Standarddrucker als PDF-Datei erstellt?

Sub PRINTMULTIPACKS() 
' 
' PRINTMULTIPACKS Macro 
' 

' 
ActiveSheet.Unprotect 
ActiveSheet.Range("$C$13:$D$22").AutoFilter Field:=1, Criteria1:="<>" 
Sheets("EXPORT TO VENDOR MULTIPLE AREAS").Select 
ActiveSheet.Unprotect 
ActiveSheet.Range("$A$11:$AD$261").AutoFilter Field:=3, Criteria1:="<>" 
Sheets("FIXTURE SCHEDULE").Select 
ActiveSheet.Unprotect 
ActiveSheet.Range("$A$4:$S$874").AutoFilter Field:=17, Criteria1:="<>" 

Sheets("COVER MULTIPLE AREAS").Select 
Range("D10").Select 
Sheets(Array("COVER MULTIPLE AREAS", "EXPORT TO VENDOR MULTIPLE AREAS")).Select 
Sheets("COVER MULTIPLE AREAS").Activate 
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)" 
Sheets("FIXTURE SCHEDULE").Select 
ActiveSheet.Range("$A$4:$S$874").AutoFilter Field:=17 
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ 
    , AllowFiltering:=True 

Sheets("EXPORT TO VENDOR MULTIPLE AREAS").Select 
ActiveSheet.Range("$A$11:$AD$261").AutoFilter Field:=3 
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ 
    , AllowFiltering:=True 
Sheets("COVER MULTIPLE AREAS").Select 
ActiveSheet.Range("$C$13:$D$22").AutoFilter Field:=1 
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ 
    , AllowFiltering:=True 
Range("C10").Select 

End Sub

Antwort

0

Sie können als PDF je nach Version von Excel nur sparen Sie verwenden.

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ 
    "C:\Users\sample\Documents\mySheet.pdf", Quality:= _ 
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _ 
    OpenAfterPublish:=False 

Wodurch C:\Users.. ist der Pfad und Dateinamen, in dem Sie speichern möchten.