2016-03-22 11 views
0

「Sheet1」、「Sheet2」、「Sheet3」および「Sheet4」の4つのシートがあります。私のPDFについては 複数のワークシートを選択せず​​にPDFにエクスポート

が、私はシート3およびシート4の内容をエクスポートしたいので、次のようにアレイにグループ化されます。通常、PDFにエクスポートする、今

Sheets(Array("Sheet3", "Sheet4")); 

、私はその後、これを選択しますhave

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

しかし、このマクロを完全にバックグラウンドで実行したいと考えています。私がSheet1を見て、このマクロを実行した場合、ワークフローに混乱を招くように選択されているため、Sheet3に移動します。

私は、変数を宣言することによって、このようなFillCellなどの基本操作のためにこれを行う方法を知っている:これは舞台裏で動作しますので、

Dim wb As Workbook 
Dim ws As Worksheet 
Set wb = ThisWorkbook 
Set ws = wb.Sheets("Sheet2") 
' modify ws 

を。

要約すると、Select、Activateなどを使用せずに複数のワークシート(すべてではない)をPDFにエクスポートして、現在見ているワークブック/ワークシートのビューを変更したいと思います。

+0

table3.ExportAsFixedFormatを呼び出そうとしましたか? –

+1

[ActiveSheetまたはSelectを使用せずに複数のシートに同時にメソッドを使用する](http://stackoverflow.com/q/22796286/4088852)。 – Comintern

+0

@Comintern、うまくいきました。乾杯 – mojo1mojo2

答えて

-1

これはトリックを行う必要があります。

Sheets("Sheet 1").ExportAsFixedFormat _ 
Type:=xlTypePDF, _ 
Filename:= _ 
"C:\filename.pdf", _ 
Quality:= xlQualityStandard, _ 
IncludeDocProperties:=True, _ 
IgnorePrintAreas:=False, _ 
OpenAfterPublish:=False 
関連する問題