ユーザーがボタンをクリックすると、新しいコメントログフォームが開くユーザーフォームがあります。この新しいフォームでは、関連するすべてのコメントを取得し、サブフォーム/データシートに表示します。
この 2 番目のフォームには、新しいコメントを入力できるコメント フィールドがあります。ユーザーが追加ボタンをクリックすると、テキストを入力して保存ボタンをクリックすると、コメントが関連付けられたテーブルに保存されます。
(この 2 番目のフォームでは編集と削除を禁止しています...追加のみが許可されています)
すべて問題ないようで、うまく機能しますが、追加しようとしているテーブルに移動すると、1 つのコメントに対して 2 つのレコードが追加されています。両方のレコードにコメント テキストが存在しますが、最初のレコードには他のすべてのデータ要素がありません。2番目のレコードは完璧です。
私が間違っているアイデアはありますか?
Private Sub AddNew_Click()
Me.Item_ID = Forms![F_First_Form]![ID]
Me.Item_Number = Forms![F_First_Form]![Item Number]
Me.Form_Name = "F_First_Form"
Me.User_ID = (Environ$("Username"))
Me.Comment.SetFocus
End Sub
Private Sub Form_Load()
Me.Item_ID = Forms![F_First_Form]![ID]
Me.Item_Number = Forms![F_First_Form]![Item Number]
Me.Form_Name = "F_First_Form"
Me.User_ID = (Environ$("Username"))
Me.AddNew.SetFocus
End Sub
Private Sub SaveComment_Click()
Dim dbs As DAO.Database
Dim rst As DAO.Recordset
Set dbs = CurrentDb()
Set rst = dbs.TableDefs("Conversation_Log").OpenRecordset
If Me.Comment = vbNullString Or Me.Dirty = False Then
Exit Sub
Else
With rst
.AddNew
!Form_Name = "F_First_Form"
!User_ID = (Environ$("Username"))
!Item_Number = Me.Item_Number
!Item_ID = Me.Item_ID
!Comment = Me.Comment
.Update
End With
Me.Requery
Me.Refresh
MsgBox "Your comment has been saved"
End If
End Sub