1

テキストボックスから計算された値をテーブルに保存するにはどうすればよいですか? 計算をデフォルト値にしようとしましたが、保存されていますが、入力を変更しても計算は変わりません。それをコントロール ソースに入れると、保存できなくなります。

計算をテーブルに保存することはできますか?

敬具、 ルクソ

4

2 に答える 2

5

ほとんどの場合、イベントを使用する必要があります。通常、コントロールの 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

計算ではいつものように、この計算を保存することが適切かどうか、またはクエリから取得できるかどうかを自問する必要があります。

最後に、Access 2010 ではデータ マクロ計算列が登場しましたが、これも適している可能性があります。

于 2012-11-06T14:35:18.017 に答える
1

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] & ""
于 2012-11-06T14:40:06.563 に答える