2016-10-14 6 views
0

VBAマクロは非常に新しくなっています。私は列A〜Jと40行ごとに印刷領域を設定するマクロを作成しようとしています。ワークシートごとに行の合計数が変わりますが、列は同じままです。VBAマクロを印刷する列A-Jと40行ごと

これまでのところ、最初のページを正しく印刷することしかできませんでした。これはこれまで私が持っていたものです。

-

Sub formatSheets() 


For i = 40 To 1350 Step 40 
    ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(i + 1, 1) 

Range("A1:J1350").Select 

Next 
End Sub 

-

あなたの助けをありがとうございました。

-Mary

+0

あなたのコードから 'Range( "A1:J1350")を差し引いたもので、選択は不要です。私のために働く。 –

+0

応答してくれてありがとう。私はそれを試みたが、シートを印刷すると、すべての列が印刷された。私は何が間違っていたのか分かりません。 – Mary

答えて

0

私はすべてのページ区切りをリセットし、新しいページブレークを追加する前に、各シートのための印刷領域を設定します。

Sub formatSheets() 
    Dim ws As Worksheet 
    For Each ws In ActiveWindow.SelectedSheets 
     ws.PageSetup.PrintArea = Intersect(.Columns("A:J"), .UsedRange) 
     ws.ResetAllPageBreaks 
    End With 

    With ActiveWindow.SelectedSheets 


     For i = 40 To 1350 Step 40 
      .HPageBreaks.Add Before:=Cells(i + 1, 1) 
     Next 
    End With 
End Sub 
関連する問題