Private Sub Form_Current()
Dim bytoffcut As Byte
Dim strCriteria
strCriteria = "[WOID] = " & Forms![frmAddStockBooking]![MouldWO]
bytoffcut = Nz(DMax("OffcutNo", "dbo_tblOffcuts", strCriteria), 0) + 1
MsgBox bytoffcut
Me.txtOffcut.Value = bytoffcut
Me.WOID.Value = Forms![frmAddStockBooking]![MouldWO]
Me.txtdate.Value = Now()
End Sub
これが機能しない理由を誰かに教えてもらえますか? 変数は、新しいレコードを作成すると bytoffcut が 1 ずつ増加する期待どおりに動作しています。しかし、テーブルをチェックすると、txtOffcut にバインドされたフィールドは、インクリメントされた値ではなく 1 を読み取ります。
編集: このコードは、フォームの On current プロパティで使用されています。フォームのボタンを使用して新しいレコードを作成すると、Dmax を使用してテーブル内の最高のオフカット No 値が検索され、それに 1 つ追加されます。
これは、offcut no txtbox がインクリメントするにつれて、フォームで機能するように見えます。しかし、オフカットが増加するレコードを持つ代わりにテーブルを見ると、代わりにすべてのレコードが1を読み取りました