Як використовувати 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

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *