Ms access 刷新/重新查询组合框问题

Ms access 刷新/重新查询组合框问题,ms-access,vba,ms-access-2003,Ms Access,Vba,Ms Access 2003,下午, 当组合框所在的窗体处于打开状态时,我在更新组合框时遇到问题 表单打开时,我的数据会发生变化,因此组合框需要刷新,但我无法确定如何刷新。似乎唯一的方法是关闭表单,然后重新打开表单,但我不是真的 组合框的原始源是一个简单的Select查询。我尝试过使用requery,但它似乎没有任何作用 Sub ComboBox_GotFocus() Me.ComboBox.Requery End Sub 有什么想法吗 干杯, Michael清空并重新填充组合框。 最简单的方法是: sSQL_Sele

下午,

当组合框所在的窗体处于打开状态时,我在更新组合框时遇到问题

表单打开时,我的数据会发生变化,因此组合框需要刷新,但我无法确定如何刷新。似乎唯一的方法是关闭表单,然后重新打开表单,但我不是真的

组合框的原始源是一个简单的Select查询。我尝试过使用requery,但它似乎没有任何作用

Sub ComboBox_GotFocus()

Me.ComboBox.Requery

End Sub
有什么想法吗

干杯,
Michael

清空并重新填充组合框。
最简单的方法是:

sSQL_Select = "SELECT * FROM SOMETABLE" 

Me.lstListBox.RowSource = "" 
Me.lstListBox.RowSource = sSQL_Select
除了使用SQL查询,您还可以显式地向列表框添加值。
在这种情况下,您可以执行以下操作:

Dim iList_Cnt As Integer
Dim iCnt As Integer

iList_Cnt = Me![lstListBox].ListCount

For iCnt = 0 To iList_Cnt - 1
    Me![lstListBox].RemoveItem 0
Next
然后重新填充列表框:

lstListbox.AddItem("Smtg_Col1;Smtg_Col2;Smtg_Col3")

循环通过组合框添加多行

清空并重新填充组合框。
最简单的方法是:

sSQL_Select = "SELECT * FROM SOMETABLE" 

Me.lstListBox.RowSource = "" 
Me.lstListBox.RowSource = sSQL_Select
除了使用SQL查询,您还可以显式地向列表框添加值。
在这种情况下,您可以执行以下操作:

Dim iList_Cnt As Integer
Dim iCnt As Integer

iList_Cnt = Me![lstListBox].ListCount

For iCnt = 0 To iList_Cnt - 1
    Me![lstListBox].RemoveItem 0
Next
然后重新填充列表框:

lstListbox.AddItem("Smtg_Col1;Smtg_Col2;Smtg_Col3")

循环通过组合框添加多行

完美,使用了第一种解决方案,感谢您提供的添加/删除值的提示!完美,使用了第一种解决方案,感谢您提供的添加/删除值的提示!