Microsoft Access 掲示板

空白行を入れた印刷について / 3

4 コメント
views
4 フォロー
3

VBAが必要になりますね。

まずは、グループ化/並べ替えは、[番号]フィールドのみグループ化して、下記のように設定します。

昇順 ヘッダーセクション付き フッターセクションなし

リボンの[コードの表示]をクリックしてVBAウィンドウを表示させます。
そこに下記のコードをコピーして貼り付けてください。

Option Compare Database
Option Explicit

Private preValue As String

Private Sub グループヘッダー1_Format(Cancel As Integer, FormatCount As Integer)
    If preValue = "" Or preValue = Me.名前.Value & " " & Me.性別.Value Then
        Cancel = True
    End If
    preValue = Me.名前.Value & " " & Me.性別.Value
End Sub

Private Sub ページヘッダーセクション_Format(Cancel As Integer, FormatCount As Integer)
    preValue = ""
End Sub

これでご希望の結果になると思います。

やっていることは、
モジュールレベル変数 preValue に直前のレコードの値を格納しておいて、
現在のレコードの値と比較して同じたったら、Cancel = True でヘッダーを出力しない。
異なっていたらそのまま出力とするということです。

ページヘッダーセクションで preValue = "" としているのは、
ページの先頭にレコードの前に空白行が出力されるのを防ぐためです。

通報 ...