|
エクセルのA列を結合しています。
結合しているセル数はまちまちで2行であったり6行であったりです。
この状態で印刷すると結合したセルがページを分割され印刷されます。
なので、マクロで結合セルを分割しないで印刷できる方法をネットで検索し、以下のマクロを見つけました。
Sub 行結合対応改頁位置調整印刷()
' 水平方向の改ページ位置を結合セル内から外し、上に調整移動する
'----------------------
Const TargetCol = "A" ' <--- 改ページに反映させる結合のある列を指定
'----------------------
Dim Rng As Range
Dim Hpb As Long
Dim Rw As Long
Application.ScreenUpdating = True ' False禁止
Set Rng = Cells.SpecialCells(xlCellTypeLastCell).Offset(1)
Rng.Activate
If HPageBreaks.Count = 0 Then Exit Sub
ActiveSheet.ResetAllPageBreaks
For Hpb = 1 To HPageBreaks.Count
Rng.Activate
Rw = HPageBreaks(Hpb).Location.Row
Cells(Rw, Range(TargetCol & 1).Column).Activate
If Selection.Row < Rw Then
HPageBreaks.Add Before:=ActiveCell
End If
Next Hpb
Range("A1").Activate
ActiveSheet.PrintOut 'Preview:=True
Set Rng = Nothing
End Sub
このマクロを入力したのですが、ページの最初の方はうまく分割され印刷されますがページ後半になると、分割されてしまいます。
最終ページまで結合セルが分割されないで印刷するにはどうすれば良いのでしょうか?
ちなみに、作成している表はページ分割しないで印刷した場合、20ページほどになります。
宜しくお願いします。
|
|