Как использовать eomonth в vba (с примером)


Вы можете использовать метод EoMonth в VBA, чтобы вернуть последний день месяца для заданной даты.

Вот распространенный способ использования этого метода на практике:

 Sub LastDayOfMonth()

Dim i As Integer

For i = 2 To 11
    Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
    Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i

End Sub

Этот конкретный макрос находит последний день месяца для каждой даты в диапазоне A2:A11 и отображает эту дату в соответствующей ячейке диапазона C2:C11 .

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: как использовать EoMonth в VBA

Предположим, у нас есть следующий набор данных в Excel, который содержит информацию о продажах компании в разные даты:

Предположим, мы хотим найти последний день месяца для каждой даты в столбце A и отобразить его в столбце C.

Для этого мы можем создать следующий макрос:

 Sub LastDayOfMonth()

Dim i As Integer

For i = 2 To 11
    Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
    Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i

End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Обратите внимание, что столбец C содержит последний день месяца для каждой соответствующей даты в столбце A.

Обратите внимание, что мы использовали свойство NumberFormat для отображения значений даты в распознаваемом формате даты в столбце C вместо серийных номеров, которые являются форматом по умолчанию в Excel.

Также обратите внимание, что последний аргумент метода EoMonth указывает количество месяцев вперед или назад, которое будет использоваться при расчете последнего дня месяца.

В этом примере мы использовали значение 0 , чтобы указать, что мы хотим найти последний день текущего месяца.

Однако вместо этого мы могли бы использовать значение -1, чтобы указать, что мы хотим найти последний день предыдущего месяца, или значение 1 , чтобы указать, что мы хотим найти последний день следующего месяца.

Примечание . Полную документацию по методу EoMonth в VBA можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:

Как сравнить даты в VBA
Как преобразовать строку в дату в VBA
Как рассчитать дни между двумя датами в VBA

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *