| 
    
     |  | 以下の要領で表を作っています。 ・明細数:64
 ・1ページあたりの明細数:最初のページのみ12、以後は13
 ・1明細あたりの行数:6
 ・用紙サイズ:A3
 ・縮小率:37%
 ・行タイトル:1〜12行目
 ・印刷範囲:AY1からCU406まで
 
 最初のページだけ明細数が違うのは、最初のページに合計欄などを設けているためです。
 印刷範囲がAYからなのは、ひとつのシートに異なる表が存在するためです。
 この条件でプレビューするところまでをマクロにするため、以下の通りコーディングしました。
 
 '印刷範囲指定
 Range("AY1:CU621").Select
 ActiveSheet.PageSetup.PrintArea = "$AY$1:$CU$406"
 ActiveWindow.View = xlPageBreakPreview
 With ActiveSheet.PageSetup
 .PrintTitleRows = "$1:$12"
 .PrintTitleColumns = ""
 End With
 
 'ページ設定
 ActiveSheet.PageSetup.PrintArea = "$AY$1:$CU$406"
 With ActiveSheet.PageSetup
 .LeftHeader = ""
 .CenterHeader = ""
 .RightHeader = ""
 .LeftFooter = ""
 .CenterFooter = ""
 .RightFooter = ""
 .LeftMargin = Application.InchesToPoints(0.393700787401575)
 .RightMargin = Application.InchesToPoints(0.15748031496063)
 .TopMargin = Application.InchesToPoints(0.490551181102362)
 .BottomMargin = Application.InchesToPoints(0.31496062992126)
 .HeaderMargin = Application.InchesToPoints(0.166850393700787)
 .FooterMargin = Application.InchesToPoints(0.236220472440945)
 .PrintHeadings = False
 .PrintGridlines = False
 .PrintComments = xlPrintNoComments
 .PrintQuality = 600
 .CenterHorizontally = False
 .CenterVertically = False
 .Orientation = xlLandscape
 .Draft = False
 .PaperSize = xlPaperA3
 .FirstPageNumber = xlAutomatic
 .Order = xlDownThenOver
 .BlackAndWhite = False
 .Zoom = 37
 .PrintErrors = xlPrintErrorsDisplayed
 End With
 
 '改ページ設定
 Set ActiveSheet.HPageBreaks(1).Location = Range("AY94")
 Set ActiveSheet.HPageBreaks(2).Location = Range("AY172")
 Set ActiveSheet.HPageBreaks(3).Location = Range("AY250")
 Set ActiveSheet.HPageBreaks(4).Location = Range("AY328")
 ActiveWindow.SelectedSheets.PrintPreview
 
 これなら5ページ目までプレビューされるはずですが、実際は6ページできてしまいます。
 しかも、改ページプレビューの青線が入る行は、
 2ページ:94(仕様通り)
 3ページ:172(仕様通り)
 4ページ:250(仕様通り)
 5ページ:328(仕様通り)
 6ページ:340
 となるので、最後の5ページ目が2明細しか印字せずに勝手に改ページ(?)してしまっています。
 
 長ったらしい記述で恐縮ですが、おかしな点があればご指摘下さると幸いです。
 
 
 |  |