エクセルの印刷倍率と表示倍率を全シート設定するVBAコード
【目的】
社内資料でも、顧客納品物でも、エクセルは印刷や表示倍率の設定調整が面倒。
シートが沢山あると、設定も大変。だからさくっとVBAでやる。
次のようなシート構成だとする。
VBAコード。
Private Sub hogehoge()
'-- エクセルの印刷倍率と表示倍率を全シート設定するVBAコード
Dim objSheet As Worksheet
' ブックの全シートを 1 つずつループして処理する
For Each objSheet In ThisWorkbook.Worksheets
Debug.Print objSheet.Name & "を処理します"
Sheets(objSheet.Index).Select
objSheet.Range("A1").Select '-- カーソルをA1に設定(お好みで)
If objSheet.Name = "特別なシートA" Then
objSheet.PageSetup.Zoom = 100 '-- 印刷倍率
ActiveWindow.Zoom = 100 '-- 表示倍率
ElseIf objSheet.Name = "特別なシートB" Then
objSheet.PageSetup.Zoom = 75
ActiveWindow.Zoom = 65
Else
'-- それ以外
objSheet.PageSetup.Zoom = 65
ActiveWindow.Zoom = 65
End If
Next
End Sub
コードの使い方
任意のシートを選択して右クリック、「コードの表示」
コピペ。
「hogehoge」にマウスカーソルを合わせて実行ボタン
VBAを保存しないので、実行したらコピペした内容を消して、コードを閉じる。
一発で全シート設定できるので助かる。
『 objSheet.Name = "特別なシートA" 』のような条件分岐を入れておけば、
特定のシートを選別して、個別に設定することができるので便利。
以上です。