2017-02-23 98 views
-1

我有兩個excel文件一個是a.xlsm包含宏,另一個是b.xlsx包含各種表(例如shee1,sheet2,sheet3等) 我的要求是當我打開a.xlsm文件,宏應打開b.xlsx goto sheet2並以pdf格式導出。 我試過下面的代碼運行宏到不同的工作表

Sub Macro4() 
' 
' Macro4 Macro 
' 

' 
    Sheets("Sales Contract").Select 
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ 
     "E:\Universal Metals\Workspace\Universal_Metals\data-out\clover_output.pdf", _ 
     Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ 
     :=False, OpenAfterPublish:=True 
    Windows("Book1").Activate 
End Sub 

請指教,因爲我是新來的宏。

回答

1

你必須寫在「a.xlsm」文件「Workbook_Open」事件中的代碼下面 給出希望工程

Private Sub Workbook_Open() 
Dim xlwb As Workbook  

Set xlwb = Workbooks.Open("C:\Users\Admin\Desktop\b.xlsx")  
xlwb.Sheets("Sales Contract").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _  
     "E:\Universal Metals\Workspace\Universal_Metals\data-out\clover_output.pdf", _  
     Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _  
     :=False, OpenAfterPublish:=True  

End Sub 
相關問題