帳票フォームから指定のレコードの単票フォームを開く方法です。
例
たとえば、このような帳票フォームから指定のレコードをダブルクリックしたら、そのレコードの単票フォームを開くようにしてみたいと思います。
まず、帳票フォーム(F_名物リスト)のフォームのダブルクリック時イベントプロシージャに次のように記述します。
Private Sub Form_DblClick(Cancel As Integer)
DoCmd.OpenForm "F_名物", acNormal, , , , , CStr(Me.ID.Value)
End Sub
OpenFormの7番目の引数にダブルクリックしたレコードのIDを指定します。次に、単票フォーム(F_名物)の
Private Sub Form_Load()
Dim strCondition As String
'検索条件を組み立て
strCondition = "ID = " & CStr(Me.OpenArgs)
'検索条件に該当するレコードから先頭のレコードを表示(DAO)
Me.Recordset.FindFirst strCondition
End Sub
FindFirst(DAO)を使って、検索条件に該当するレコードから先頭のレコードを表示しています。ちなみに「F_名物」のレコードソースにはテーブル「名物」を指定しています。
また、フォームはポップアップを「はい」にしています。
では、実行してみたいと思います。
まず、帳票フォームを開き、ID=5のレコードセレクタをダブルクリックしてみます。

すると、このように単票フォームが開き、ID=5のレコードが表示されました。
スポンサーリンク