2

サブフォーム テーブルのフィールドの横にある小さなボックスをクリックし、[詳細] ボタンをクリックすると、ウィンドウがポップアップするようにしようとしています。このフォームには、そのレコードに関するすべての追加情報がポップアップ表示されます。編集できるようにテキストボックスに入れます。このフォームではポップアウトし、戻るボタンしかありません。戻るをクリックすると、詳細情報を表示していたレコードのテキスト ボックスで行われたすべての変更が保存され、更新されます。次に、前のフォームに戻り、そのフォームのサブフォームを更新して、テーブルに加えられたすべての変更を表示します。すべてのレコードの詳細情報を表示する [詳細情報] ボタンを探していません。選択した 1 つのレコードのみの詳細情報を表示することを探しています。別のレコードの詳細情報を取得するには、クリックして新しいレコードを選択する必要があります。

詳細ボタンを押すことの意味の例として、次の写真をご覧ください。

写真はテーブルです。その小さなスペースをクリックすると、レコード全体が強調表示され、キーボードの DEL を押してレコードを削除できます (この場合は関係ありませんが、それがテーブルであることを指摘するだけです)。

ここに画像の説明を入力


[詳細情報] ボタンにあるコード:

    Private Sub CustomerMoreInfoBtn_Click()
   On Error Resume Next
   DoCmd.Close acForm, "CustomerInfoF"
   DoCmd.DeleteObject acQuery, "CustomerMoreInfoQ"
   On Error GoTo Err_CustomerMoreInfoBtn_Click

   Dim qdef As DAO.QueryDef
   Set qdef = CurrentDb.CreateQueryDef("CustomerMoreInfoQ", _
                                       "SELECT * " & _
                                       "FROM CustomersT " & _
                                       "WHERE CustomerID = " & txtCustID.Value)
   DoCmd.OpenForm "CustomerInfoF"

Exit_CustomerMoreInfoBtn_Click:
   Exit Sub
Err_CustomerMoreInfoBtn_Click:
   MsgBox Err.Description
   Resume Exit_CustomerMoreInfoBtn_Click
End Sub

それ自体の形式のコード:

Private Sub Form_Close()
   On Error Resume Next
   DoCmd.DeleteObject acQuery, "CustomerMoreInfoQ"
End Sub
4

1 に答える 1