この記事では、特定の条件に基づいて改ページを挿入するマクロを作成します。

生データは、エージェント名、クライアント名、電話番号、電子メールIDを含むエージェントごとのデータで構成されます。

ArrowRawData

印刷中に特定のエージェントのデータを別々のページに表示する必要があります。したがって、各エージェントのデータの最後に改ページを挿入します。

ArrowOutput

ロジックの説明

改ページを挿入するための「InsertingPagebreak」マクロを作成しました。最初の列の2つの連続するセルの値を比較して、特定のエージェントに関連する最後のセルを見つけ、改ページを挿入します。

コードの説明

ActiveSheet.ResetAllPageBreaks上記のコードは、シートに挿入された前の改ページを削除するために使用されます。

If Cells(LngRow、LngCol).Value <> Cells(LngRow-1、LngCol).Value Then上記のコードは、最初の列内の連続するセルを比較するために使用されます。

ActiveWindow.SelectedSheets.HPageBreaks.Add Before:= Cells(LngRow、LngCol)

上記のコードは、指定されたセルの前に改ページを挿入するために使用されます。

コードについては以下に従ってください

Sub InsertingPagebreak()

'Declaring variables

Dim LngCol As Long

Dim LngRow, MaxRow As Long

'Clear existing page breaks

ActiveSheet.ResetAllPageBreaks

LngCol = 1

'Getting row number of last cell

MaxRow = Range("A11").SpecialCells(xlCellTypeLastCell).Row

'Looping through all the rows starting from thirteenth row

For LngRow = 13 To MaxRow

'Comparing values in cell of two consecutive rows for the specified column

If Cells(LngRow, LngCol).Value <> Cells(LngRow - 1, LngCol).Value Then



'Inserting page break

ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(LngRow, LngCol)



End If



Next LngRow

End Sub

このブログが気に入ったら、FacebookやFacebookで友達と共有してください。

皆様からのご意見をお待ちしております。私たちの仕事を改善し、あなたのために改善する方法をお知らせください。 [email protected]までご連絡ください