2016-04-03 97 views
0

雖然這個問題已經被問到,但我沒有找到真正的答案。 我需要以編程方式選擇工作簿中的工作表並將它們保存爲PDF文件,而無需創建臨時工作簿並將選定的工作表複製到該文件中。Excel:將選定的工作表保存爲PDF文件

或者,如何創建工作簿而不顯示它 - 即在內存中,然後在HD上?這是又可以幫助解決第一個問題...

回答

0

試試這個:

Sub SaveToPdf() 

Dim ws As Worksheet 

Dim sfName As String 

For Each ws In Worksheets 

sfName = ws.Name 
sfName = "C:\Misc\" & sfName & ".pdf" 

     ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ 
     sfName, Quality:= _ 
     xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _ 
     OpenAfterPublish:=False 

Next ws 


End Sub 

你需要做在每張紙上確保您的打印區域首次設置我覺得

+0

我不它的工作原理 - 實際上我確信它不會 - 它如何知道工作簿中的SELECTED工作表要打印?此代碼將工作表打印爲單獨的PDF,這不是我的問題。也許你應該再讀一遍...... –

+0

該代碼適用於將所有工作表另存爲單獨的pdf文件。你想將多個工作表保存爲一個pdf嗎?或者您是否在尋找一種方法來動態選擇單個工作表來保存爲pdf?如果您始終想保存相同的工作表,則可以在代碼中添加「if」語句以檢查名稱是否與您想要的名稱相匹配。 – ShirleyM

相關問題