選択した範囲をXPS出力したい
Excelで、特定の範囲をXPSファイルに出力したいケースがあります。
下記のようにActiveSheetや、すべてのシートをXPS保存するケースだけではなく、
シートの作成上、一部分だけXPS保存させたいケースもあるかと思います。
範囲選択した部分(Range)をXPSファイルとして出力するマクロは以下です。
選択した範囲のXPS保存するサンプルコード
'■現在選択しているセル範囲をXPSデータで保存する Public Sub call_RangeSaveXPS() Dim fPath As String Dim fName As String Dim rng As Range '■現在開いているブック情報をファイル名にするため、変数に格納 fPath = ActiveWorkbook.Path & "\" fName = Left(ActiveSheet.Name, InStrRev(ActiveWorkbook.Name, ".")) Application.DisplayAlerts = False '■現在選択しているセル情報をrngに格納 Set rng = Selection '■PDF出力(ActiveWorkBookと同じ階層にPDF保存) rng.ExportAsFixedFormat Type:=xlTypeXPS, Filename:=fPath & fName & ".xps" Application.DisplayAlerts = True End Sub [/vbnet]
注意点
- 個人用マクロブックでご紹介していますが、アドイン化も一つの手です。
- 保存先のファイルが既に存在してた場合は、強制的に上書きします。
コメント