| 
    
     |  | ▼りん さん: こんにちわ。suikaです。
 
 早速のご返信、どうも有難うございます。
 
 りんさんに教えて頂いた、下記2つのコードを私のコードに組み込んで検証して
 みました。
 
 検証するに当たり、3通りのサンプルデータを準備しました。
 1.データの行数⇒400行
 2.  〃   ⇒800行
 3.  〃   ⇒1300行
 
 <検証結果>
 データの行数に関係なく、印刷範囲がピッタシです。
 列ラベルが不要なページに跨っていないので、わざわざ、手作業で印刷ページ数
 の指定を行う必要性も、無くなりました。
 
 りんさん、どうも有難うございます。助かりました。
 
 最近、仕事でマクロを使い始めたのですが、右も左も分からない、ど素人の私の
 質問に回答して頂き、感謝感激です^^
 
 逆引き辞典で調べたのですが、分からず、ネット検索で色々調べている内に、
 このVBA質問箱に辿り着きました。
 
 また、何か分からない事があれば、投稿させて頂きますので、その時は、また
 お力をお貸し下さい。本当に、有難うございました。
 
 >
 >その1
 > 単純に使用範囲で判定する場合
 >
 >  With Application.ActiveSheet
 >    'シートのデータの最下行を印刷範囲の一番したとする
 >    With .UsedRange
 >      Rmax = .Cells(.Count).Row
 >    End With
 >    '
 >    .PageSetup.PrintArea = "$A$1:$L$" & Rmax
 >  End With
 >
 >その2
 > データはないけど書式とか連番とかで使用範囲が必要な部分より大きい場合
 >
 >  With Application.ActiveSheet
 >   'データが入っている最下位置を判断する基準列をBとした場合
 >   Rmax = .Cells(.Rows.Count, "B").End(xlUp).Row
 >   .PageSetup.PrintArea = "$A$1:$L$" & Rmax
 >  End With
 
 |  |