0

数値を入力したいバインドされていないテキスト ボックスがあり、それをフォームに入力します。これを行うと、別のフォームでもチェックボックスのステータスを変更したいと考えています。つまり、在庫のようなものです。このアイテムをこのボックスに追加すると、在庫がなくなったため、チェックボックスの値を変更する必要があります。私が持っているフォームは「Info」で、チェックボックスの名前は「ChkboxAvailableUse」です。チェックボックスをキット番号と場所などに関連付けています。したがって、「AssignKit」と呼ばれるバインドされていないテキスト ボックスに番号を入力すると、その番号が「Info」フォ​​ームと「InvKitNumber」テキスト フィールドで同じキット番号を検索し、そのレコードのチェックボックス (ChkboxAvailableUse) をfalse に変更します。これが理にかなっていることを願っています。以下に動作すると思われるコード行があります。どんな助けでも素晴らしいでしょう。ありがとうございました

CurrentDb.Execute " UPDATE Info SET ChkboxAvailableUse = FALSE WHERE InvKitNumber = " & Me.AssignKit & ""
4

2 に答える 2

1

フォームまたはサブフォームと一致するようにそのフォームのチェックを外すかテーブルにチェックインするだけの場合は、レコードセットを使用できます。

Dim myR as Recordset
Dim strSQL as String

'This SELECT string will pull from the assignkit field in the subform 
'and will be used find the matching record in the table
strSQL = "SELECT * FROM info WHERE InvKitNumber = '" & Me!subformnamehere.Form.AssignKit & "'"

'This will make your recordeset variable the one record you want to modify
Set myR = db.OpendRecordset(strSQL, dbOpenDynaset)

'Now that the recordset is pointing to that row, you can change the checkbox
'with something like this, and even use an IF statement
myR.Edit
myR![ChkboxAvailable] = True 
myR.Update

'Then close the recordeset when done
Set myR = Nothing

これがお役に立てば幸いです。微調整が必​​要な場合はお知らせください。

于 2013-07-13T18:04:38.713 に答える