我有一个名为"BreedingTable"
的第一个表,主键"ID"
和"TransactionStatus" = "Active"
。
我从组合框填充了"开玩笑表单"数据到文本字段Text2.value = "ID"
来自BreedingTable
.
完成所有过程后,我想更改育种表的TransactionStatus
=Closed
.
我正在使用下面的代码,但它永远不起作用。
注意"如果我给出确切的交易 ID 号,它可以正常工作, 但是如果我要求根据text2
查找,则不起作用。
我的代码如下:
Private Sub exitprograme3()
Me.Text2.SetFocus
Dim i As Integer
Dim db As Database
Dim rs As Recordset
Dim Trn As Integer
Set db = CurrentDb
Set rs = db.OpenRecordset("BreedingTable")
For i = 0 To rs.RecordCount - 1
Me.Text2.SetFocus
If rs.Fields("ID") = Me.Text2.Value Then
rs.Edit
rs.Fields("BreedingStatus") = "Closed"
rs.Update
End If
rs.MoveNext
Next i
rs.Close
Set rs = Nothing
db.Close
DoCmd.Close
End Sub
请协助...
如果我在下面的语句中输入确切的交易 ID 号,它有效
If rs.Fields("ID") = "323" Then
这工作正常。
但是如果我像下面这样输入,它不起作用
If rs.Fields("ID") = Me.Text2.Value Then
不需要循环:
Private Sub exitprograme3()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("Select * From BreedingTable")
rs.FindFirst "[ID] = " & Me!Text2.Value & ""
' If ID is text, then quotes:
' rs.FindFirst "[ID] = '" & Me!Text2.Value & "'"
If Not rs.NoMatch Then
rs.Edit
rs.Fields("BreedingStatus").Value = "Closed"
rs.Update
End If
rs.Close
Set rs = Nothing
Set db = Nothing
DoCmd.Close
End Sub