テキストボックスから計算された値をテーブルに保存するにはどうすればよいですか? 計算をデフォルト値にしようとしましたが、保存されていますが、入力を変更しても計算は変わりません。それをコントロール ソースに入れると、保存できなくなります。
計算をテーブルに保存することはできますか?
敬具、 ルクソ
テキストボックスから計算された値をテーブルに保存するにはどうすればよいですか? 計算をデフォルト値にしようとしましたが、保存されていますが、入力を変更しても計算は変わりません。それをコントロール ソースに入れると、保存できなくなります。
計算をテーブルに保存することはできますか?
敬具、 ルクソ
ほとんどの場合、イベントを使用する必要があります。通常、コントロールの After Update イベントが適しています。例えば
Form
---------------------------
Amount : 10
Tax : 2
Total : 12 'Amount + Tax
上記のフォームでは、税金と金額の After Update イベントで、バインドされたコントロールの合計を金額 + 税金に更新できます。
Private Sub Amount_AfterUpdate()
Me.Total = Me.Amount + Me.Tax
End Sub
計算ではいつものように、この計算を保存することが適切かどうか、またはクエリから取得できるかどうかを自問する必要があります。
INSERT INTO
新しいレコードを作成している場合、または
UPDATE
既存のレコードを更新している場合。
正確に何をしているのかによっては、非表示の別のバインドされていないテキストボックスが必要になる場合があります。
これにより、レコード ID Autonumber フィールド = フォームの autonumber フィールドfieldName
の値にフィールドが更新されます。fieldNameTextBox
Insert Into の構文は非常によく似ています。
Dim db As DAO.Database
Dim RecordList As DAO.Recordset
Set db = CurrentDb()
Set RecordList = db.OpenRecordset("qryClientSearch")
db.execute "UPDATE table1 SET table1.fieldName = """ & Me.fieldNameTextBox.Value & """ WHERE Table1.ID = " & Forms![FormName]![ID] & ""