- ベストアンサー
【Excel】改ページ場所を設定するVBA
- ExcelのVBAを使って、表データの改ページ場所を設定する方法について教えてください。
- 特定の条件に基づいて品番や色ごとに改ページする方法をExcelのVBAで設定する方法を教えてください。
- Excel2007で、表データを品番ごとや色ごとに改ページしてプリントする方法をVBAで設定したいのですが、初心者のためわかりません。設定方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
方法1) 品番が切り替わるごとに,改ページを挿入します。 各印刷頁にタイトル(「品番 色」)を印刷するには,「印刷タイトル行」を設定します。 (印刷頁ごとに「品番 色」行をイチイチ挿入したりはしません) 手順: ALT+F11を押す 現れたシートで挿入メニューから標準モジュールを挿入する 現れたシートに下記をコピー貼り付ける sub macro1() dim i as long activesheet.pagesetup.printtitlerows = "$1:$1" activesheet.resetallpagebreaks for i = 2 to range("A65536").end(xlup).row if cells(i, "A") <> cells(i + 1, "A") then activesheet.hpagebreaks.add cells(i + 1, "A") end if next i end sub ファイルメニューから終了してエクセルに戻る シートを表示し,ALT+F8を押してマクロを実行する。 方法2:マクロを使わない方法 ページ設定ダイアログのシートタブで,1行目を「印刷タイトル行」として設定します ご利用のエクセルのバージョンが不明ですが,Excel2003以前ではデータメニューから集計,Excel2007以降ではデータタブから小計を開始します。 グループの基準は「品番」列とし,とりあえず「色」の「データの個数」などを集計させることとして,「グループごとに改ページを挿入する」のチェックを入れて集計行を挿入させます。
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17069)
改ページを設定する個所(行だと思うが)を割り出すコードをベンようすること。 簡単なアルゴリズムであろう。 ソート法が簡単だろう。 その列で番号や色でソートしておく。 すると同じ番号や色は、近隣の行に集る。 問題にしている列で、上から判別していてt 前の行と同じなら次の行をさす。 違う場合には、直前行に改ページ魚入れる。 ーー 改ページのコードはマクロの記録や、Googleで「エクセルVBA 改ページ 挿入」で照会すること。 敢えてコードは書かない。自分で調べること。 VBAの解説書にも例があるだろう。