アクティブシートだけを保存するマクロ

Pocket

ExcelでアクティブシートのみをExcel形式またはPDFで保存するマクロです。Excel2007で確認しました。

今回は保存場所をデスクトップに固定しています。
デスクトップのパス(フォルダ)は、WSHを使うと「CreateObject("WScript.Shell").SpecialFolders.Item("Desktop")」
で取得できます。

Excel形式で保存

シート名をファイル名にしてExcel形式で保存します。
アクティブシートのみを保存するために一度、シートをコピーし、そのシートを含むブックがアクティブになったところで保存し、閉じています。

Sub アクティブシートのみExcelでデスクトップに保存()
    desktop_path = CreateObject("WScript.Shell").SpecialFolders.Item("Desktop") & ""
    myname = ActiveSheet.Name
    ActiveSheet.Copy
    ActiveWorkbook.SaveAs _
        Filename:=desktop_path & myname & ".xlsx"
    ActiveWindow.Close
End Sub

PDFで保存

シート名をファイル名にしてPDFで保存します。
PDFは、基本的にはアクティブシートだけが保存されますので、上よりシンプルです。

Sub アクティブシートのみPDFでデスクトップに保存()
    desktop_path = CreateObject("WScript.Shell").SpecialFolders.Item("Desktop") & ""
    myname = ActiveSheet.Name
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=desktop_path & myname & ".pdf"
End Sub

[ 2012年9月15日 | カテゴリー: Excel | タグ: , , ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報