comboboxdate格式vba excel

我在一个Excel工作表中,我想要一个date范围内的所有数据,所以创build了一个带有两个combobox的用户窗体来selectdate范围(即一个开始date和另一个结束date),但是当我selectdate以数字格式显示,例如2012年7月28日的41118。 那么我在程序中添加下面的代码

Private Sub ComboBox1_Change() ComboBox1.Value = Format(ComboBox1.Value, "dd-mm-yyyy") End Sub 

现在问题解决了,但现在它运行缓慢,需要10-15秒来selectdate。 我找不到问题在哪里? 任何人的帮助将是很大的支持。 提前致谢。

在它的change事件中改变ComboBox的值会再次触发事件,这将会像循环一样。 尝试在更改值之前禁用事件,然后启用它们:

 Private Sub ComboBox1_Change() Application.EnableEvents = False ComboBox1.Value = Format(ComboBox1.Value, "dd-mm-yyyy") Application.EnableEvents = True End Sub