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


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

Обратите внимание, что рабочие дни исключают выходные и праздничные дни.

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

 Sub CalculateNetworkDays()

Dim i As Integer

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

End Sub 

В этом конкретном примере вычисляет количество рабочих дней между датами начала в диапазоне A2:A9 и датами окончания в диапазоне B2:B9 и отображает результаты в диапазоне C2:C9 .

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

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

Предположим, у нас есть следующий список дат начала и окончания в Excel:

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

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

 Sub CalculateNetworkDays()

Dim i As Integer

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

End Sub

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

В столбце C показано количество полных рабочих дней между датами начала и окончания в каждой строке.

Например:

  • Количество рабочих дней с 02.01.2023 по 03.01.2023 равно 2 . (поскольку эти две даты приходится на выходные).
  • Количество рабочих дней с 05.01.2023 по 08.01.2023 равно 2 .
  • Количество рабочих дней в период с 10.01.2023 по 20.01.2023 — 9 .

И так далее.

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

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

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

VBA: как получить название месяца из даты
VBA: как использовать IsDate, чтобы проверить, является ли ячейка датой
VBA: как использовать мм/дд/гггг в качестве формата даты

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

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