Como usar a função workday em vba (com exemplo)


Você pode usar o método WorkDay no VBA para adicionar ou subtrair um número específico de dias úteis de uma data.

Aqui está uma maneira comum de usar esse método na prática:

 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

Esta macro específica adiciona o número de dias úteis especificado no intervalo B2:B10 a cada data no intervalo A2:A10 e exibe os resultados no intervalo C2:C10 .

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: como usar a função WorkDay em VBA

Digamos que temos uma coluna de datas no Excel e também outra coluna que especifica o número de dias úteis a serem adicionados a cada data:

Podemos criar a seguinte macro para adicionar o número de dias úteis na coluna B a cada data correspondente na coluna 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

Quando executamos esta macro, recebemos a seguinte saída:

Por padrão, a coluna C exibe datas como números de série.

Para exibir esses valores como datas reconhecíveis, destaque o intervalo C2:C10 e clique na guia Inserir na faixa superior, clique no menu suspenso Formato de número e clique em Data abreviada :

Cada número de série agora será exibido como uma data:

A coluna C exibe cada data na coluna A com o número específico de dias úteis na coluna B adicionado.

Observe que se especificarmos um número negativo na coluna B, o método WorkDay subtrairá esse número de dias úteis da data na coluna A.

Nota : Você pode encontrar a documentação completa do método VBA WorkDay aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

VBA: Como obter o nome do mês a partir da data
VBA: Como classificar por data
VBA: Como adicionar if entre duas datas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *