Як використовувати функцію workday у vba (з прикладом)


Ви можете використовувати метод WorkDay у VBA, щоб додати або відняти певну кількість робочих днів від дати.

Ось поширений спосіб використання цього методу на практиці:

 SubAddWorkDays ()

Dim i As Integer

For i = 2 To 10
    Range("C" & i) = WorksheetFunction.WorkDay(Range("A" & i), Range("B" & i))
Next i

End Sub

Цей конкретний макрос додає кількість робочих днів, указану в діапазоні B2:B10, до кожної дати в діапазоні A2:A10 і відображає результати в діапазоні C2:C10 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як використовувати функцію WorkDay у VBA

Припустімо, у нас є стовпець із датами в Excel, а також інший стовпець, який визначає кількість робочих днів, які потрібно додати до кожної дати:

Ми можемо створити такий макрос, щоб додати кількість робочих днів у стовпці B до кожної відповідної дати в стовпці A:

 SubAddWorkDays ()

Dim i As Integer

For i = 2 To 10
    Range("C" & i) = WorksheetFunction.WorkDay(Range("A" & i), Range("B" & i))
Next i

End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

За замовчуванням стовпець C відображає дати як порядкові номери.

Щоб відобразити ці значення як розпізнавані дати, виділіть діапазон C2:C10 , потім клацніть вкладку «Вставити » вздовж верхньої стрічки, потім клацніть спадне меню «Формат числа» та клацніть «Коротка дата» :

Тепер кожен серійний номер відображатиметься як дата:

У стовпці C відображається кожна дата в стовпці A з додаванням конкретної кількості робочих днів у стовпці B.

Зверніть увагу: якщо ми вкажемо від’ємне число в стовпці B, метод WorkDay відніме цю кількість робочих днів із дати в стовпці A.

Примітка . Ви можете знайти повну документацію для методу VBA WorkDay тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: Як отримати назву місяця від дати
VBA: Як сортувати за датою
VBA: Як додати якщо між двома датами

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

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