一回も披露したことのない豆知識

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

A 回答 (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

この回答への補足

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

補足日時:2013/03/10 20:54
    • good
    • 0

>改ページし37行まで空白(罫線あり)で出力させたい



この最後の一言が、エクセル(の一般機能)ではできない内容になります。

あとは、あなたの印刷したい表がどの行も同じ高さなのか、行ごとに高さが違っても37行とにかく突っ込みたいのか、具体的にどういう状況なのかによっても難易度が変わってきます。



出来ない事は諦めて手早く結果を出す方を優先できるなら、次のような手順が考えられます。
1.印刷ページプレビューで下余白を調整し、成り行きで37行で改ページするように調整する
2.G列に「2文字目と3文字目」をMID関数で抜き出す
3.ご利用のエクセルのバージョンが不明ですがデータメニュー(データタブ)の集計(小計)を開始、G列を基準として小計行を挿入させ、その際に「グループごとに改ページを挿入する」。


もしもカンペキにヤリタイようにしかやりたくないのでしたら、ごりごりとマクロを組んで改ページと余計な空白行を挿入してやるしか、方法はありません。この方向では特にフォローはしませんので、状況に応じて前述のような不明点を補足の上で、別途ご相談を投稿してみて下さい。
    • good
    • 0
この回答へのお礼

ありがとうございます。

行幅はすべて同じで6~7mmかと。

excel2007 です。

お礼日時:2013/03/09 19:42

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報