• ベストアンサー

Excel2003 100行ずつ改ページを入れていきたい

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

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

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.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

その他の回答 (3)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.3

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でできないことは無いが、用紙とか印刷範囲などの情報がないとダメだ。なお、この質問にはこれ以上コメントはしません。新しいことを聞くなら改めて質問してね。

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.2

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

  • a987654
  • ベストアンサー率26% (112/415)
回答No.1

マクロ記録でやれば簡単に判ると思いますが。 ちなみに 13行目の上に改ページを入れるマクロは Rows("13:13").Select ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell 後は100回コピーするなり、forなどで回すなり好きにしてください。