2014年1月21日火曜日

動的印刷範囲の設定をする

書いたつもりでいて書いてなかったネタを。

以前書いた、このエントリの続きなんですが。

ワークシート関数の引数にワークシート関数を使って可動範囲を指定する

(2013年6月7日)
これの応用、というかむしろこっちの方が使う機会が多いんじゃないかと言う、「データのある行までを印刷範囲にする」ってやつです。

これにはOFFSET関数を使います。具体的には以下の感じ。
OFFSET(印刷範囲の先頭セル,0,0,COUNTA(カウントしたい列[絶対指定])+調整行数,列数)
この公式を、シートの"Print_Area"([Ctrl]+[F3]もしくは[挿入]→[名前付き範囲]→[名前の定義]から表示される名前付き範囲のこと)に設定します。


例)
4行のヘッダと1行の空白を配置した、見出し1行のある13列のテーブルに動的印刷範囲を設定する:

 =OFFSET($A$1,0,0,COUNTA($A:$A)+6,13)

こんな感じで大体OKでしょう。行末に空白が何行か欲しいとか欲しくないとか好みがあるとおもいますので、色々試してみてください。



テーブルだとどんどん下に行を追加していって、都度印刷範囲を設定するんだけどつい忘れて印刷してしまいデータの落ちがあってトラブルになりクレームがきて責任問題で熱があるのに謝罪にいかされて始末書を書いて、というようなことになる前にこれを設定しておくといいですね!(←嫌味

0 件のコメント:

コメントを投稿