Excel Form VBAcombobox重置

这应该很容易,但我似乎无法find任何解决办法。 我有一个使用VBA的Excel表单。 Excel工作表有四列填充数据和窗体显示这些字段。

然后,用户在combobox中select一个值,使用命令button提交响应,并将combobox中的值写入Excel工作表。

然后,用户使用命令button在电子表格中向前推进一行,并从新行加载四个值。 这一切都很好。

我试图解决的问题是,combobox仍然select在先前的select价值。 我想重置combobox,所以没有select,用户必须再次为下一行做出select。

下面是我用来加载combobox,并为用户select的variables设置的代码。 用户提交表单后似乎无法将combobox恢复为默认状态。

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 

有两种方法来重置combobox。 拿你的select:

1

 cbDesAccWanted.Value = Null 

2

 cbDesAccWanted.ListIndex = -1 

线

cbDesAccWanted.Text = desacc

是完全不必要的。

使用cbDesAccWanted_DropButtonClick不是填充值列表的正确位置。 当表单首次显示给用户时,这个列表应该被设置。 (忽略它显示chnages的值,在这种情况下,当行改变时改变它,而不是当用户点击它时)

所以当用户点击向下箭头移动到下一条logging时,包括下面一行

 Me.cbDesAccWanted.text = Me.cbDesAccWanted.List(1) 

注意(1)访问列表中的第二项

所以这将它重置为默认值

好。