9/11/2016

Excel。Print。無駄な印刷範囲をいちいち変えるのが面倒!自動で印刷範囲選択する方法


Excel。無駄な印刷範囲をいちいち変えるのが面倒!自動で印刷範囲選択する方法

<OFFSET関数とPrint_Area>


Excelで印刷すると、余計な範囲があったり、
あるいは、逆に、データが印刷範囲に入ってなかったり、
一度だけならいいのですが、使いまわすデータでの印刷の場合、
データ量によって、当然印刷範囲が変わってくれた方がいいわけですよね。

そこで、今回は、データ量に合わせて、
自動的に範囲選択が出来ちゃうテクニックをご紹介します。

まず、確認ですが、印刷範囲の設定は、別に問題はないと思われます。

次のデータを印刷しようとすると、

2ページ目が空白のまま印刷されてしまい、もったいない。
というケースがあったりするわけですね。

コストのことも考えると、無駄な用紙は抑制したいものですよね。
そこで、今回の自動範囲が登場するわけです。

そこで、今回登場するのは、OFFSET関数と名前の定義。

そして、Print_Areaを修正してきます。


Print_Areaという名前の定義は、通常のままだとありません。

印刷範囲を設定すると登場する名前の範囲なので、
まずは、適当でいいので、印刷の範囲を設定します。

これで、まず、Print_Areaを定義できました。

続いて、自動で範囲選択するために、OFFSET関数を使っていきます。

OFFSET関数は、範囲を指定できる関数です。

名前の定義で、関数を直接入力するのは大変なので、一度作成して、
その数式をコピーしていくことにしましょう。

どのセルでもいいので、クリックして、OFFSET関数ダイアログボックスを表示しましょう。

参照には、$A$1 これは、範囲選択の始点です。
行数と列数は、指定しませんので、0(ゼロ)
高さは、COUNTA($A:$A) データ量によって変動させます。
幅は、COUNTA($1:$1) 列数(見出し数)も変動可能にします。

数式は、

=OFFSET($A$1,0,0,COUNTA($A:$A),COUNTA($1:$1))

この数式をコピーして、名前の管理でPrint_Areaに貼り付けます。

Print_Areaを選択して、参照範囲に数式を貼り付けます。

OKしたあと、シート名が加わってきますが、そのままで大丈夫です。
あとは、閉じるボタンをクリックしましょう。

では、改めて、ファイルタブの印刷で確認してみましょう。

自動的に範囲選択されましたね。

このように、データ量に応じて、印刷範囲が連動してくれたのが確認できましたね。

名前の定義(Print_Area)+OFFSET関数のコラボレーションテクニックを
知っているのと知っていないのでは、
作業効率が大幅に変わることが実感できるテクニックの一つですね。

OFFSET関数は、使い方によって様々なテクニックに使える関数の一つですので、
機会がありましたら、少し使ってみるといいですよね。