教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 印刷】印刷方向を設定する方法について教えて!

f:id:m_kbou:20210507072251p:plain

印刷方向を設定するにはPageSetup.Orientationプロパティを使用します。印刷する方向を縦にするにはxlPortraitを記述し、横にするにはxlLandscapeを記述します。この印刷方向を設定する方法について紹介します。

 

 

構文

記述方法は以下の通りとなります。

Sheets("[シート名]").PageSetup.Orientation =[印刷方向]

[説明]:

印刷方向を設定するには

 「Sheets("[シート名]").PageSetup.Orientation =[印刷方向]」

と記述します。

[シート名] 印刷方向を指定するシート名を記述します。
※「”」(ダブルクォーテーション)で囲みます。
[印刷方向] 印刷する方向(縦/横)を記述します。
※印刷方向は以下一覧のいずれかを指定します。
定数 内容
xlPortrait 1 用紙の向きを縦に設定
xlLandscape 2 用紙の向きを横に設定

[記述例]:

Sheets("Sheet1").PageSetup.Orientation = xlPortrait
Sheets("Sheet1").PageSetup.Orientation = xlLandscape

 

使い方

使い方について具体的に説明します。

印刷方向を縦に設定する

印刷方向を縦に設定する方法について説明します。

[プログラミング例]:

Sub 縦に印刷()

  Sheets("Sheet1").PageSetup.Orientation = xlPortrait
  Sheets("Sheet1").PrintPreview

End Sub

内容は、「Sheet1シートの印刷する方向を縦に設定し、印刷プレビューで表示して下さい。」との意味になります。

f:id:m_kbou:20210507074713p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①Sheet1シートのA1セル~G8セルにデータが入力されています。<縦に印刷>ボタンには上記のプログラミング例のプログラムが登録されています。この<縦に印刷>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210507074733p:plain

②結果は以下の様になり、A1セル~G4セルまでのセル範囲が印刷プレビューで縦方向に印刷される事が確認できます。

f:id:m_kbou:20210507074824p:plain

印刷方向を縦に設定する方法についての説明は以上です。

 

印刷方向を横に設定する

印刷方向を横に設定する方法について説明します。

[プログラミング例]:

Sub 横に印刷()

  Sheets("Sheet1").PageSetup.Orientation = xlLandscape
  Sheets("Sheet1").PrintPreview

End Sub

内容は、「Sheet1シートの印刷する方向を横に設定し、印刷プレビューで表示して下さい。」との意味になります。

f:id:m_kbou:20210507075529p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①Sheet1シートのA1セル~G8セルにデータが入力されています。<横に印刷>ボタンには上記のプログラミング例のプログラムが登録されています。この<横に印刷>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210507075544p:plain

②結果は以下の様になり、A1セル~G4セルまでのセル範囲が印刷プレビューで横方向に印刷される事が確認できます。

f:id:m_kbou:20210507075609p:plain

印刷方向を横に設定する方法についての説明は以上です。

 

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

 

おわりに

今回は印刷方向を設定する方法について説明しました。類似の内容として印刷時の用紙サイズの設定倍率設定もあります。こちらも参考にして下さい。