No.2ベストアンサー
- 回答日時:
こんばんは。
以下の場合は、このようになります。
------------
○ .Cells(i + 1, 1) 1行足されている
------------改ページ
しかし、そうではなく、以下のようになるなら、このようにします。
------------
------------改ページ
○ .Cells(i - 1, 1) 1行減らす
印刷範囲を最初に設定してから、マクロを行ってください。
出来上がったら、改ページプレビューで確認してください。
標準モジュールに設定してください。
'------------------------
Sub PageBreak_enter()
Dim Rng As Range
Dim i As Long
'区切れの文字列
Const CHKSTRING As String = "○"
With ActiveSheet
If .PageSetup.PrintArea = "" Then
MsgBox "印刷範囲を設定してください"
Exit Sub
End If
.ResetAllPageBreaks
' ↑(何回も行わないなら要りません)
Application.ScreenUpdating = False
Set Rng = .Range(.PageSetup.PrintArea)
For i = 1 To Rng.Rows.Count
If .Cells(i, 1).Value Like CHKSTRING Then
'ここで、改ページを調整可
.Cells(i + 1, 1).PageBreak = xlPageBreakManual
End If
Next
End With
Application.ScreenUpdating = True
Set Rng = Nothing
End Sub
No.4
- 回答日時:
改ページは
A(1)手動
(2)位置を知らせる仕組み(#3回答?)
(3)ボタン化(VBA)
B(1)決まった行数で改ページ
(2)ある列のデータが変化したらその直前で改ページ(#2回答
(3)決まった語句や数が出てきたら改ページ
(4)改ページを入れないでプログラムでRange(○).PrintOutの○を調節
などが考えられる。
この質問ではB(3)かなと思う。
ーーー
A列 B列
得意先A1
2
3
4
5
得意先B2
3
4
ff
のようなデータの場合
標準モジュールに
Sub test01()
d = Range("B65536").End(xlUp).Row
For i = 2 To d
If InStr(Cells(i, "A"), "得意先") > 0 Then
Cells(i, 1).PageBreak = xlPageBreakManual
End If
Next i
Cells.PrintOut
End Sub
で良いようです。
ーー
A(3)は
シートにボタンを貼り付け、そのClickイベントに
Private Sub CommandButton1_Click()
ActiveCell.PageBreak = xlPageBreakManual
End Sub
No.3
- 回答日時:
わたしからは手動で行う場合にちょっと楽になる方法を。
A列にオートフィルタをかけて、○を抽出します。
一番最初の○のある行を行ごと選択して、
[挿入]-[改ページ]
を行います。
以下、
下矢印=>[F4]=>下矢印=>[F4]...
と繰り返しキー入力をすればOK。
#[F4]キーは[前の動作を繰り返す]操作なので、これは改ページ挿入=>下移動の繰り返しになります。
No.1
- 回答日時:
以下のマクロはB列の値が変わる行で改頁を挿入するマクロです。
もしカテゴリが大分類、小分類などに分かれているならもう少し判断を加える必要があるので補足するか、ご自身で改造してみてください。
(1行目がタイトル、2行目以降がデータの想定です)
ご存じと思いますが、以下のマクロをALT+F11でVBE画面を開き、「VBAProjectエクスプローラのシート名右クリック」→「挿入」→「標準モジュール」で表示される画面にペーストして下さい。実行はシート画面に戻って、ALT+F8を押してマクロ一覧からマクロ名を選択して実行します。MacroBKが改行挿入、macroBKDELが改行削除です
Sub MacroBK()
Dim PB As HPageBreak
Dim idx As Long
Const tCol As String = "B" '改頁判断する列
With ActiveSheet
For idx = 3 To .Cells(65536, tCol).End(xlUp).Row
If .Cells(idx, tCol) <> .Cells(idx - 1, tCol) Then
ActiveSheet.HPageBreaks.Add Before:=.Cells(idx, tCol)
End If
Next idx
End With
End Sub
Sub MacroBKDEL()
Dim idx, PB As Integer
PB = ActiveSheet.HPageBreaks.Count
For idx = 1 To PB
ActiveSheet.HPageBreaks(1).Delete
Next
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
- UNIX・Linux テキストファイルをページ番号付きでコマンドラインから印刷したい 1 2023/02/22 12:47
- Visual Basic(VBA) VBAの改ページ設定について 7 2022/06/20 00:57
- ノートパソコン ページ番号の入れ方について 3 2023/02/16 17:11
- Excel(エクセル) エクセルのフッタやヘッダーについて 3 2023/02/04 09:45
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Excel(エクセル) 【Excel】複数シートがあるエクセルデータで片面印刷と両面印刷設定がシートごとに入 1 2023/03/10 15:25
- Visual Basic(VBA) 改ページ 2 2023/03/10 21:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/01/06 08:39
- その他(パソコン・スマホ・電化製品) Webページ印刷時にヘッダー・フッターをつけたい 1 2022/04/25 21:35
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Excelで特定の文字のところで自動的に改ページしたい
Excel(エクセル)
-
EXCEL 改ページ自動挿入方法を教えてください。
Excel(エクセル)
-
特定文字のセル(エクセルデータ)の所で改ページ印刷する仕組みは可能?
Excel(エクセル)
-
-
4
Excelについて。特定の範囲内で自動的に改ページされることを禁止する
その他(Microsoft Office)
-
5
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
6
エクセルで複数行に一度に改ページを挿入する方法
Excel(エクセル)
-
7
VBAでデータが変わった切れ目で改ページしたい
Excel(エクセル)
-
8
エクセルの改ページを行ごとに自動挿入するには?
Excel(エクセル)
-
9
Excel 改ページのVBAうまくいかないです
Excel(エクセル)
-
10
VBAでの改ページ位置の変更
Excel(エクセル)
-
11
Excelで全ての行単位で改ページ
Word(ワード)
-
12
EXCELでタイトル行と一番下の行を固定して印刷したい
会計ソフト・業務用ソフト
-
13
ヘッダー
Excel(エクセル)
-
14
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
15
word VBA 改ページの繰り返しについて
Visual Basic(VBA)
-
16
改ページ条件を簡単に設定する方法
Access(アクセス)
-
17
エクセルのセル内の余白の設定って出来るのでしょうか?
Excel(エクセル)
-
18
印刷時、改ページごとの下枠にのみ罫線を引きたい
Excel(エクセル)
-
19
エクセルで空白の部分を印刷範囲外にする方法
Excel(エクセル)
-
20
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのグレーの部分を戻したい
-
YMM4 で MOV ファイルが読み込...
-
ページが増える
-
Googleドライブの画像が開けない
-
エクセルのマクロで印刷プレビ...
-
エクセル上に貼り付けた画像が...
-
エクセルの縦の幅だけ拡大したい。
-
Excelで縦を拡大、横を縮小する...
-
エクセルでA4 2枚をA3 1枚で印...
-
改ページの2ページ目の作り方
-
Excelで特定の文字・記号のとこ...
-
ExcelVBA 改ページの横破線を消...
-
Excel上の表に縦の点線が入り消...
-
ベータ版とプレビュー版
-
Excel ~プリンターがない時で...
-
EXCEL改ページプレビューのペー...
-
エクセルのオートフィルタ機能...
-
ホームページビルダーでブラウ...
-
エクセルで印刷ページだけ白く...
-
エクセルで、大きく灰色に書か...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのグレーの部分を戻したい
-
ページが増える
-
エクセルの縦の幅だけ拡大したい。
-
エクセルでA4 2枚をA3 1枚で印...
-
EXCEL改ページプレビューのペー...
-
改ページの2ページ目の作り方
-
エクセルのA3横一枚のデータをA...
-
YMM4 で MOV ファイルが読み込...
-
エクセル上に貼り付けた画像が...
-
EXCELで1行の内容を1枚の紙に印...
-
エクセルでページのど真ん中に...
-
印刷範囲がこまぎれになる
-
エクセルのマクロで印刷プレビ...
-
エクセルで点線を引き、印刷す...
-
Excelで縦を拡大、横を縮小する...
-
Excelの改ページ印刷についての...
-
エクセルで、大きく灰色に書か...
-
Excelで特定の文字・記号のとこ...
-
EXCEL-VBAで印刷時のページ番号...
-
プリンターが突然1部しか印刷...
おすすめ情報