VBA运行宏当月最后一天

VBA运行宏当月最后一天,vba,excel,Vba,Excel,我想在这个月的最后一天回来。从下拉组合框中选择月份。如果我选择一月,它将返回“2017年1月31日”,但我只希望它返回31日。我错过了什么 EndDate = WorksheetFunction.EoMonth(ComboBox1.Value & Year(Date), 0) 函数WorksheetFunction.EoMonth返回一个Date,而您需要一个表示日期(该月最后一天)的数值 因此,您需要一个Long变量,并且可以使用Day函数 EndDate = WorksheetFu

我想在这个月的最后一天回来。从下拉组合框中选择月份。如果我选择一月,它将返回“2017年1月31日”,但我只希望它返回31日。我错过了什么

EndDate = WorksheetFunction.EoMonth(ComboBox1.Value & Year(Date), 0)

函数
WorksheetFunction.EoMonth
返回一个
Date
,而您需要一个表示日期(该月最后一天)的数值

因此,您需要一个
Long
变量,并且可以使用
Day
函数

EndDate = WorksheetFunction.EoMonth(ComboBox1.Value & Year(Date), 0)

Dim myDay As Long
myDay = Day(EndDate)

函数
WorksheetFunction.EoMonth
返回一个
Date
,而您需要一个表示日期(该月最后一天)的数值

因此,您需要一个
Long
变量,并且可以使用
Day
函数

EndDate = WorksheetFunction.EoMonth(ComboBox1.Value & Year(Date), 0)

Dim myDay As Long
myDay = Day(EndDate)