我希望我能正确地问这个问题。我在表单上有一个列表框(访问 2007)并将其设置为“简单”,以便我可以多选。我正在尝试根据列表框中的选择更新表中的多个列。我有几个文本框,我想将它们用作更新表格的信息。我有一个循环,无论选择了多少项目,它都只更新表中的第一条记录。我想我明白为什么它只更新我循环中的第一条记录,但不确定
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("Table1", dbOpenDynaset)
Dim i As Variant
For Each i In Listbox.ItemsSelected
With rs
.Edit
!Col1 = Me.Textbox1
!Col2 = Me.Textbox2
!Col3 = Me.Textbox3
.Update
End With
Next
我认为这是因为我没有在循环中指定要更新表的“位置”,但我不知道如何在这个循环中执行此操作。我将在列表框中(位于位置 1、3 和 4)中有 3 列,所有这些列都需要包含在内,以指定表中需要更新的记录。我也尝试过使用带有 DoCmd.RunSql 的 sql 查询,但似乎无法更改 ListIndex 中间查询的焦点。为我缺乏知识而道歉,我对视觉基础很陌生。请帮忙