ms-access-2007 - 无法通过表单访问 2007 传递文本值来编辑记录
问题描述
我有一个"BreedingTable"
用主键"ID"
和"TransactionStatus" = "Active"
.
我将组合框中的“开玩笑表格”数据填充到文本字段
Text2.value = "ID"
中BreedingTable
。
完成所有过程后,我想更改TransactionStatus
Breeding table = 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
请协助 ...
如果我在下面的 if 语句中输入准确的交易 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
推荐阅读
- android - 如何使用 Kotlin 在 Android Studio 中使用 WebView 阅读 pdf?
- javascript - CSS 表格数据被压缩(?)
- python - numpy中的Python简单卷积
- ffmpeg - ffplay如何改变寻道间隔
- neo4j - Cypher 将多个节点关联到一个节点
- node.js - 我应该安装依赖于其他已安装包的 npm 包吗?
- python - SQLAlchemy / gevent / cx_Oracle 池大小保持在 1
- clickonce - ClickOnce 配置文件随机损坏
- oracle - oracle中循环模式的序列
- javascript - 如何将频道/服务器 ID 转换为其名称?