フォームに表示されているレコードをレポートで出力

TIPSメインへ戻る

概要説明

単票式フォームなら表示レコード、表形式フォームなら選択しているレコードを印刷(プレビュー)する方法。

    (要領は次の手順)
  1. 印刷用のコマンドボタンの設置
  2. コマンドボタンにプロシージャの割り当て
  3. プロシージャに印刷命令の記述
  4. where条件に選択レコードを指定

ポイントはフォームで表示されているレコードを特定すること。主キーとなっているフィールドの値 を取得すれば良い。レポートを開くときにその値を引き継いで行くことで同じレコードがレポート出力で きる。

実施例

  1. フォーム上に設置するコマンドボタン、開くレポート、主キーの名前
    • コマンドボタンの名前:[CmdPrint] 表示名は「印刷」にする。
    • 開くレポートの名前:[R_台帳] レポートデザインは事前に作っておく。
    • 主キーとなっているフィールド名:[番号]

    次のフォームを使って行いました。


  2. フォームをフォームビューに切り換えて印刷したい名簿を表示させて「印刷」ボタンを クリックします。
  3. コマンドボタンのクリック時のプロシージャ

    Private Sub CmdPrint_Click()

     ' 変数の宣言
     Dim stDocName As String
     Dim bango As Long

     ' 表示フォームの番号を代入する
     bango = [番号]
     ' 開くレポート名を代入する
     stDocName = "R_台帳"

     ' レポートを開く
     DoCmd.OpenReport stDocName, acPreview, , "番号 =" & bango

    End Sub

    指定のレポートが開かれました。


      
  4. これで完成

(この項終わり)