• ベストアンサー

エクセル印刷ページ行数指定

エクセル印刷ページ行数指定 A1:F1000程度のデータがあります。 A4サイズ縦に 1ページ37行で改ページしたいと思います。 1行目はタイトルです。 A:Aの文字データ(半角英数字)の左から2文字目もしくは3文字目が変わると改ページするようにしたいです。 その場合データが1ページ37行に満たない場合でも改ページし37行まで空白(罫線あり)で出力させたいのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (260/624)
回答No.2

先ず罫線無で印刷して、1ページ分の同じピッチの罫線だけのものを重ね打ちします 計算無の印刷 1.1行目のタイトルは、ページレイアウトの印刷タイトルのタイトル行に設定します 2.改ページの挿入は次のマクロを実行します Sub 改ページ挿入() Dim A Dim i, j As Integer ActiveSheet.ResetAllPageBreaks j = 0 i = 2 A = Mid(Range("A" & i), 2, 2) For i = 2 To 3000 j = j + 1 If (j > 37) Or (A <> Mid(Range("A" & i), 2, 2)) Then Range("A" & i).Select ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell j = 0 A = Mid(Range("A" & i), 2, 2) End If Next i End Sub

bomberking
質問者

補足

2ページ以降1行多く改ページされます。 1ページ目は、タイトル1行入れて38行で改ページされますが 2ページ以降は、タイトル1行入れて39行で改ページされてしまいます。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>改ページし37行まで空白(罫線あり)で出力させたい この最後の一言が、エクセル(の一般機能)ではできない内容になります。 あとは、あなたの印刷したい表がどの行も同じ高さなのか、行ごとに高さが違っても37行とにかく突っ込みたいのか、具体的にどういう状況なのかによっても難易度が変わってきます。 出来ない事は諦めて手早く結果を出す方を優先できるなら、次のような手順が考えられます。 1.印刷ページプレビューで下余白を調整し、成り行きで37行で改ページするように調整する 2.G列に「2文字目と3文字目」をMID関数で抜き出す 3.ご利用のエクセルのバージョンが不明ですがデータメニュー(データタブ)の集計(小計)を開始、G列を基準として小計行を挿入させ、その際に「グループごとに改ページを挿入する」。 もしもカンペキにヤリタイようにしかやりたくないのでしたら、ごりごりとマクロを組んで改ページと余計な空白行を挿入してやるしか、方法はありません。この方向では特にフォローはしませんので、状況に応じて前述のような不明点を補足の上で、別途ご相談を投稿してみて下さい。

bomberking
質問者

お礼

ありがとうございます。 行幅はすべて同じで6~7mmかと。 excel2007 です。