DataAdd

Descrição:

A função DateAdd em VBA é uma poderosa ferramenta que permite aos desenvolvedores adicionar ou subtrair uma quantidade específica de tempo a partir de uma data existente. Ela é particularmente útil em situações onde é necessário calcular datas futuras ou passadas com base em uma data de referência.
Essa função aceita três argumentos: o intervalo de tempo que se deseja adicionar ou subtrair (como “d” para dias, “m” para meses, “yyyy” para anos, entre outros), a quantidade de tempo a ser adicionada ou subtraída, e a data de referência à qual o cálculo será aplicado.
Por exemplo, se você quiser calcular a data daqui a 5 anos a partir de uma data específica, você pode usar a função DateAdd para realizar esse cálculo de forma rápida e eficaz.
Além disso, a função DateAdd é frequentemente utilizada em conjunto com outras funções de manipulação de datas para criar aplicações mais complexas que envolvem o gerenciamento preciso de datas em projetos VBA.
Exemplos:


Sub Exemplo1()
    Dim dataAtual As Date
    Dim dataFutura As Date
    
    dataAtual = Date
    dataFutura = DateAdd("d", 7, dataAtual)
    
    MsgBox "A data daqui a 7 dias será: " & dataFutura
End Sub
    

Este exemplo adiciona 7 dias à data atual e a exibe em um MsgBox.


Sub Exemplo2()
    Dim dataAtual As Date
    Dim dataPassada As Date
    
    dataAtual = Date
    dataPassada = DateAdd("m", -3, dataAtual)
    
    MsgBox "A data de 3 meses atrás foi: " & dataPassada
End Sub
    

Este exemplo subtrai 3 meses da data atual e a exibe em um MsgBox.


Sub Exemplo3()
    Dim dataEspecifica As Date
    Dim novaData As Date
    
    dataEspecifica = DateSerial(2023, 10, 15)
    novaData = DateAdd("yyyy", 5, dataEspecifica)
    
    MsgBox "A data daqui a 5 anos será: " & novaData
End Sub
    

Este exemplo adiciona 5 anos a uma data específica e a exibe em um MsgBox.


Sub Exemplo4()
    Dim dataAtual As Date
    Dim dataFutura As Date
    
    dataAtual = Date
    dataFutura = DateAdd("ww", 2, dataAtual)
    
    MsgBox "A data daqui a 2 semanas será: " & dataFutura
End Sub
    

Este exemplo adiciona 2 semanas à data atual e a exibe em um MsgBox.


Sub Exemplo5()
    Dim dataAtual As Date
    Dim dataFutura As Date
    
    dataAtual = DateValue("2023-10-15")
    dataFutura = DateAdd("yyyy", 2, dataAtual)
    
    MsgBox "A data daqui a 2 anos será: " & dataFutura
End Sub
    

Este exemplo adiciona 2 anos a uma data específica e a exibe em um MsgBox.