ホーム > Excel > 表の境目に改ページを挿入するマクロ

表の境目に改ページを挿入するマクロ

2009 年 4 月 18 日 コメントをどうぞ コメント
このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark

たとえば、エクセルで次のような表があった場合、地域コード別に改ページを挿入したい、とします。

通番 地域コード 支店コード
1 100 1220
2 100 1420
3 200 2358
4 200 2306
5 300 3243

地域コードは昇順でソートするものとして、その境目に改ページを挿入すればよいのですが、大量にある場合には面倒。
これをマクロで実行する場合のVBAは次の通りです。

Sub 改ページ挿入()
    Const colkey = 2 '改ページのキーとなる列
    myrow = 3
    Do
        If Cells(myrow - 1, colkey) <> Cells(myrow, colkey) Then
            ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(myrow, colkey)
        End If
        myrow = myrow + 1
    Loop Until Cells(myrow, 1) = ""
End Sub

ここでは、キーとなる列、すなわち地域コードは2列目ですので、「Const colkey = 2」となっています。
もし支店コード別に改ページを挿入したい場合には「Const colkey = 3」とします。

カテゴリー: Excel タグ:
  1. 大森
    2011 年 2 月 12 日 21:26 | #1

    ヤフーで検索したらヒットしましたので、拝見させていただきました。
    ちょうど、仕事で一定の条件で改ページをするマクロを探していたので、大変役に立ちました。
    自分の記述したマクロだと、余計な改ページまで入ってしまい、悩んでいたところです。
    「Const colkey」と「myrow」、使えます。色々と活用したいと思います。
    ありがとうございました。

  2. 2011 年 2 月 13 日 06:02 | #2

    コメントありがとうございます。
    お役に立てて嬉しいです。

  1. トラックバックはまだありません。