这应该很容易,但我似乎找不到任何可以解决的问题。我在Excel中使用VBA表单。 Excel工作表有四列填充数据,表单显示这些字段。
然后,用户在组合框中选择一个值,使用命令按钮提交响应,并将组合框中的值写入Excel工作表。
然后,用户使用命令按钮在电子表格中向下前进一行,并从新行加载四个值。这一切都很有效。
我试图解决的问题是组合框保持选择为先前选择中的值。我想重置组合框,因此没有选择任何内容,用户必须再次为下一行做出选择。
下面是我用来加载组合框并为用户选择的内容设置变量的代码。在用户提交表单后,似乎无法将组合框恢复到默认状态。
Private Sub cbDesAccWanted_Change()
Select Case cbDesAccWanted.Text
Case "Yes"
desacc = "Yes"
Case "No"
desacc = "No"
End Select
cbDesAccWanted.Text = desacc
End Sub
Private Sub cbDesAccWanted_DropButtonClick()
cbDesAccWanted.List = Array("Yes", "No")
End Sub
答案 0 :(得分:2)
有两种方法可以重置组合框。请选择:
cbDesAccWanted.Value = Null
cbDesAccWanted.ListIndex = -1
答案 1 :(得分:0)
行
cbDesAccWanted.Text = desacc
完全没必要。
使用cbDesAccWanted_DropButtonClick不是填充值列表的正确位置。首次向用户显示表单时,应设置此列表。 (unelss显示chnages的值,在这种情况下,当行发生变化时更改它,而不是当用户点击它时)
因此,当用户单击向下箭头移动到下一个记录时,请包含以下行
Me.cbDesAccWanted.text = Me.cbDesAccWanted.List(1)
注意(1)访问列表中的第2项,即“否”。
因此,将其重置为默认值No。
确定。