dポイントプレゼントキャンペーン実施中!

10,000行あるエクセルのシートを100行ずつ改ページを入れていきたいです。
手動でするには100回せねばならず、行の高さを調整してうまくやろうとしてもうまくいきません。
マクロでそんな機能を書ければいいのですが、そんな能力もないためアナログな方法でよい案があれば教えてください。

もし、簡単に設定できるならマクロもご教示いただければ幸いです。

A 回答 (4件)

マクロの記録に手を加えて、こんな感じでは



Sub Macro1()
Dim i
For i = 100 To 10000 Step 100
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(i + 1, 1)
Next i
End Sub
    • good
    • 0

100行ずつ改ページを入れるなら、次で済んでしまうが、


Sub test()
Dim r As Integer
For r = 101 To 10100 Step 100
Worksheets("Sheet1").Rows(r).PageBreak = xlPageBreakManual
Next
End Sub
これで印刷がうまくいくとは限らない。
用紙や印刷範囲が100行分印刷できなければ、自動で途中に改ページが入ってしまう。行の高さを調整するなどして、少なくとも100行分は印刷できるようにしておかないと意味が無い。
これもVBAでできないことは無いが、用紙とか印刷範囲などの情報がないとダメだ。なお、この質問にはこれ以上コメントはしません。新しいことを聞くなら改めて質問してね。
    • good
    • 0

余白の高さは1mm単位で設定できますので、



1ページの行数が100±1行程度まで行の高さを調整しておいて、ページ設定の余白の高さを増減すれば、100行ごとのページにするのはさほど難しくないと思います。
    • good
    • 0

マクロ記録でやれば簡単に判ると思いますが。



ちなみに
13行目の上に改ページを入れるマクロは
Rows("13:13").Select
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
後は100回コピーするなり、forなどで回すなり好きにしてください。
    • good
    • 0

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