2.1 余白を設定する
Printerオブジェクトを使って、余白を設定する方法です。この方法はAccess 2002以降で使用することができます。
余白を設定するときに使うプロパティ
ページ設定の「余白タブ」の項目を設定するときに使うプロパティは次の通りです。

余白は、ダイアログではミリで指定しますが、これらのプロパティにはTwipという単位で指定します。「1=約0.0176mm」を目安にしてください。
設定内容
プロパティ名
1.上
Printer.TopMargin
2.下
Printer.BottomMargin
3.左
Printer.LeftMargin
4.右
Printer.RightMargin
5.データのみ印刷する
Printer.DataOnly
※10mmなら568 (10÷0.0176)

「データのみ印刷する」(Printer.DataOnly)は、TrueがチェックON(データのみ)、FalseがチェックOFF(全て印刷)です。
Printerオブジェクトを使って余白を設定する例
次の例では、Printerオブジェクトを使って、レポートの余白を設定しています。サンプルでは、上下左右全て20mmにしています。また、「データのみ印刷する」(Printer.DataOnly)にはFalseを設定し、全て印刷するようにしています。

Option Compare Database
Option Explicit

Private Sub Report_Open(Cancel As Integer)

    '単位はTwip(1=約0.0176mm) 20mmなら1136 (20÷0.0176=1136)
    '上余白
    Me.Printer.TopMargin = 1136
    '左余白
    Me.Printer.LeftMargin = 1136
    '下余白
    Me.Printer.BottomMargin = 1136
    '右余白
    Me.Printer.RightMargin = 1136

    '全て印刷する
    Me.Printer.DataOnly = False

End Sub
 ※このコードは、レポートのイベント「開く時」へ記述した例です


次の例は、レポートを印刷プレビューで開き、ページ設定を行ったあとに印刷する例です。

Option Compare Database
Option Explicit

Sub s_PrinterSample()

    'レポートを印刷プレビューで開く
    DoCmd.OpenReport "レポート1", acViewPreview

    '単位はTwip(1=約0.0176mm) 20mmなら1136 (20÷0.0176=1136)
    '上余白
    Reports("レポート1").Printer.TopMargin = 1136
    '左余白
    Reports("レポート1").Printer.LeftMargin = 1136
    '下余白
    Reports("レポート1").Printer.BottomMargin = 1136
    '右余白
    Reports("レポート1").Printer.RightMargin = 1136

    '全て印刷する
    Reports("レポート1").Printer.DataOnly = False

    'レポートを印刷する
    DoCmd.PrintOut acPrintAll
    'レポートを閉じる
    DoCmd.Close acReport, "レポート1"

End Sub
 ※このコードは、標準モジュールへ記述した例です
Copyright(C) 1999-2006 結城圭介。 All rights reserved