今天date和未来date下拉列表在ComboBox中

每次我启动该文件,然后单击用户窗体的macros,combobox应该有今天和未来的date列表,它不能有过去的date。

这是我有的代码,它只inputcombobox中的date,并格式化列表的值。 但我不知道如何列出未来的date。

Public Sub UserForm_initialize() ComboBox3.Value = Format(Date, "dd/mm/yyyy") ComboBox3.Value = Format(ComboBox3.Value, "dd/mm/yyyy") End Sub 

使用Now()而不是Date 。 “Date”是数据types的半保留关键字。 你也许能够把它作为一个variables来使用,但是这样做会模棱两可。

我会这样做的方式是使用.AddItem方法在一个循环中,用一些date算术,使用DateAdd函数(超级方便,如果你使用date很多!)。

 Public Sub UserForm_initialize() Dim i as Integer Dim myDate as Date myDate = Now() For i = 0 to 10 'Add the next 10 days, for example ComboBox3.AddItem Format(DateAdd("d", i, myDate), "dd/mm/yyyy") Next ComboBox3.ListIndex = 0 End Sub