VBA Run Macro Последний день месяца

Я хочу вернуть последний день месяца. Месяц выбирается из выпадающего списка. Если я выберу январь, то вернется "31.01.2017", но я просто хочу, чтобы он вернул 31. Чего мне не хватает?

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

1 ответ

Решение

Функция WorksheetFunction.EoMonth возвращает Date, в то время как вы хотите числовое значение, представляющее день (последнего дня месяца).

Так что вам нужно Long переменная, и вы можете использовать Day функция.

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

Dim myDay As Long
myDay = Day(EndDate)
Другие вопросы по тегам