プロが教えるわが家の防犯対策術!

エクセルの印刷範囲をページ単位で可変にする方法はありますか。
検索してみたところ、OFFSET関数で行単位で変化させる方法がヒットしたのですが、行単位ではなくページ単位で変化させたいのです。

例えばA1セルの値が2なら1~2ページを印刷し、5なら1~5ページを印刷する、といった具合です。
(OFFSET関数が使えないのではと考える理由として「印刷したい範囲以降の行・列にもデータがある」ということもあります)

OFFSET関数以外に方法がないなら、最終行を判断する作業列を別途作成するしかないと思っているのですが、可能だとしてもあまりスマートではないように思い ます。
どうぞよろしくお願い致します。

質問者からの補足コメント

  • 質問に書き忘れていたのですが、同様の仕様のシートが複数あり(データ量はバラバラ)、最終的には全てのシートを選択し、必要なページだけ連続したページ番号を打って印刷したいのですが可能でしょうか。

      補足日時:2022/05/23 15:28

A 回答 (3件)

>必要なページだけ連続したページ番号を打って印刷したい



No1さんの回答のようにVBAを使えば可能です。
が、「データ量はバラバラ」とか
「印刷したい範囲以降の行・列にもデータがある」
の意味が分からないので、No2の回答をしました。
具体的には、印刷したいページ以外のデータは無視すれば良いのか?
印刷したくないのでどんなデータがあっても良い筈。
ここに違和感を覚えたからの回答です。
例えば、データの意味を全く分からない作業者に
複数のシートのxページとyページを印刷しなさいと
指示して期待結果が得られますか?
この指示で、作業ミスなんて考えにくいです。
作業ミスが出るのは、人が何らかの判断を行うからです。
その判断内容を明確にして、VBAの仕様に盛り込めば良いだけ。
    • good
    • 0

ページ毎にデータ範囲を変えて入力する方法ではダメなのですか?

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
シート毎に変えるのではなく、複数シートを同じ仕様で(データの行数は様々)で必要部分だけを印刷したいのです。
都度データ範囲を変えるのは、ミスに繋がりますので。

お礼日時:2022/05/24 02:15

VBAで作れば簡単だと思いますよ。

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
質問に書き忘れていたのですが、同様の仕様のシートが複数あり(データ量はバラバラ)、最終的には全てのシートを選択し、必要なページだけ連続したページ番号を打って印刷したいのですが可能でしょうか。

お礼日時:2022/05/23 15:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!