サンプルコード

サブフォー

Option Compare Database

Private Sub Form_AfterUpdate()
'    Set rs = Me.Recordset.Clone
'    rs.Edit
'    rs.振替日 = Form_フォーム1.txt振替日
'    If IsNull(rs.登録日時) Then
'        rs.登録日時 = Now()
'    End If
'    rs.更新日時 = Now()
'    rs.Update
'    Set rs = Nothing
'    Me.Recalc
End Sub


Private Sub 金額_BeforeUpdate(Cancel As Integer)
 MsgBox "befor金額"
 Dim cr As Integer
 cr = Me.CurrentRecord
 Me.振替日 = Form_フォーム1.txt振替日
 If IsNull(Me.登録日時) Then
        Me.登録日時 = Now()
 End If
 Me.更新日時 = Now()
' Me.Recalc

End Sub

フォーム

Option Compare Database

Private Sub btn検索_Click()
On Error GoTo Err_btn検索_Click
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim sql As String

    Set db = CurrentDb
    Set rs = db.OpenRecordset("T_ヘッダー", dbOpenDynaset)
    
    rs.Filter = "委託者コード='" & txt委託者コード & "'"
    Set rs = rs.OpenRecordset()
    
    If rs.RecordCount = 0 Then
        If MsgBox("該当レコードはありません。追加しますか?", vbOKCancel) Then
            If DCount("委託者コード", "自動集金先", "委託者コード='" & txt委託者コード & "'") = 0 Then
                MsgBox ("自動集金先にありません")
                GoTo Exit_btn検索_Click
            Else
                sql = ""
                sql = "INSERT INTO T_ヘッダー (委託者コード,振替日,入力件数,入力金額) values ('" & txt委託者コード & "','" & txt振替日 & "','" & txt入力件数 & "','" & txt入力金額 & "');"
                db.Execute (sql)
                txt入力件数 = 0
                txt入力金額 = 0
                sql = ""
                sql = "select * from Q_結合テーブル where 委託者コード = '" & txt委託者コード & "';"
                Form_クエリ1のサブフォーム.RecordSource = sql
            End If
        End If
    Else
        txt振替日 = rs!振替日
        txt入力金額 = rs!入力金額
        txt入力件数 = rs!入力件数
        sql = ""
        sql = "select * from Q_結合テーブル where 委託者コード = '" & txt委託者コード & "';"
        Form_クエリ1のサブフォーム.RecordSource = sql
        
    End If
    
'    DoCmd.GoToRecord , , acFirst

    
    
'    Screen.PreviousControl.SetFocus
'    DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70

Exit_btn検索_Click:
    Set rs = Nothing
    Set db = Nothing
    Exit Sub

Err_btn検索_Click:
    MsgBox Err.Description
    Resume Exit_btn検索_Click
    
End Sub


Private Sub txt委託者コード_AfterUpdate()
'    Dim rs2 As DAO.Recordset
'
'    Set rs2 = Form_フォーム1.Recordset.Clone
'    Do Until rs2.EOF
'        If Me.txt委託者コード = rs2![委託者コード] Then
'            Me.txt登録金額 = Me.CurrentRecord
'            GoTo exit_loop
'        Else
'            rs2.MoveNext
'        End If
'    Loop
'exit_loop:
'    Me.Recalc
'    Me.クエリ1のサブフォーム.Requery

End Sub

http://www.accessclub.jp/dao/16.html
http://www.sanryu.net/acc/tips/tips97.htm
http://www.accessclub.jp/samplefile/samplefile_185.htm
http://ww3.tiki.ne.jp/~kaya/Ac_tips.html#Tips8_001
http://www.accessclub.jp/bbs3/0261/superbeg81198.html
http://www.geocities.jp/cbc_vbnet/kisuhen/docmd.html
http://www.geocities.jp/cbc_vbnet/DAO/database.html#form

合計金額
サブフォーム(クエリ1のサブフォーム)のフッターに
テキスト22
=sum([金額])

メインフォームの金額欄に
=[クエリ1のサブフォーム].[Form].[テキスト22]