Excel VBA:シートを1ページに印刷する|FitToPagesTall

印刷の拡大縮小にある「シートを1ページに印刷」をVBAで行う方法です。




Homeに戻る > Excel 印刷のTipsへ

Excel VBAで縦方向を何ページ以内で印刷するか設定するには、FitToPagesTallプロパティを使います。

横方向を何ページ以内で印刷するか設定するには、FitToPagesWideプロパティを使います。

FitToPagesTall、FitToPagesWideを使う前に、Zoom = False を実行する必要があります。

関連するVBA「中央に印刷させる」を掲載しています、参照してください。



シートを1ページに印刷するVBA

Excelシート画面

■実行フォーム

「1ページ内に印刷」ボタンをクリックすると通常4ページになるのを、1ページで印刷します。

「解除」ボタンをクリックすると通常の印刷になります。

印刷実行シート

・通常で印刷すると4ページになっています。

通常の印刷プレビュー

・1ページに入るようにした結果、総ページ数が1ページになっています。

1ページにおさまるようにした印刷プレビュー

Excel VBA実行コード

解除ボタンと印刷ボタンのクリックイベントに記述しています。

Option Explicit

'解除ボタン
Private Sub CommandButton1_Click()
    'ヘッダーに「ページ数/総ページ数」を印刷
    Worksheets("Sheet1").PageSetup.RightHeader = "&P/&N"
    '拡大・縮小率を100%にする
    Worksheets("Sheet1").PageSetup.Zoom = 100
    
    '印刷プレビュー
    Worksheets("Sheet1").PrintPreview
End Sub

'1ページ内に印刷ボタン
Private Sub CommandButton2_Click()
    'ヘッダーに「ページ数/総ページ数」を印刷
    Worksheets("Sheet1").PageSetup.RightHeader = "&P/&N"
    'ズームを無効に
    Worksheets("Sheet1").PageSetup.Zoom = False
    '縦を1ページ内で印刷
    Worksheets("Sheet1").PageSetup.FitToPagesTall = 1
    '横を1ページ内で印刷
    Worksheets("Sheet1").PageSetup.FitToPagesWide = 1
    
    '印刷プレビュー
    Worksheets("Sheet1").PrintPreview
End Sub



Homeに戻る > Excel 印刷のTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved