Funkcja VBA DateAdd

Funkcja Excel VBA DateAdd

Funkcja DateAdd jest sklasyfikowana w funkcji daty i godziny w VBA i ta funkcja ma wartość wyjściową jako datę, przyjmuje dane wejściowe jako format daty i dodaje je do bieżącej daty, aby zwrócić nową datę, składnia tej funkcji przyjmuje interwał trzech argumentów, liczba i data.

Korzystając z funkcji DateAdd możemy dodawać i odejmować dni, miesiące i lata od podanej daty. Data w programie Excel jest nieodłączną częścią naszej codziennej pracy, nie możemy pracować w programie Excel bez daty, godziny i innych ważnych rzeczy. Dodawanie jednej daty do drugiej, odejmowanie jednej daty od drugiej to powszechny proces. W zwykłym arkuszu roboczym po prostu wykonujemy operacje arytmetyczne i otrzymujemy wynik. W VBA mamy funkcję o nazwie DateAdd, która wykona zadanie.

Składnia

Interwał: Interwał to nic innego, jak rodzaj wartości, którą chcesz dodać lub odjąć. Na przykład, czy chcesz dodać lub odjąć miesiąc, czy chcesz dodać lub odjąć dni, czy chcesz dodać lub odjąć rok, czy chcesz dodać lub odjąć kwartał itp.

Poniżej znajduje się lista kodów i opisów.

  • Liczba: liczba miesięcy, dni lub tygodni (podana w przedziale), które chcemy dodać lub odjąć od daty.
  • Data: Rzeczywista wartość daty, którą wykonujemy operację arytmetyczną.

Na przykład, jeśli masz datę „14-mar-2019” i chcesz dodać 2 dni do daty, użyj poniższego kodu:

DateAdd („d”, 2, „14-03-2019”)

Wynik powyższego kodu to: 16-03-2019

Jak korzystać z funkcji Dateadd w VBA?

Możesz pobrać ten szablon VBA DateAdd Excel tutaj - VBA DateAdd szablon Excel

Przykład 1 - Dodaj datę

Aby rozpocząć postępowanie, zastosujmy prostą funkcję DateAdd. Załóżmy, że pracujesz z datą „14-03-2019”.

Krok 1: Rozpocznij podprocedurę, tworząc nazwę makra.

Krok 2: Zdefiniuj zmienną jako Data.

Kod:

 Sub DateAdd_Example1 () Dim Month As Date End Sub 

Krok 3: dla tej zmiennej przypisz wartość.

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = End Sub 

Krok 4: Uruchom formułę DateAdd .

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd (End Sub 

Krok 5: Jaka jest operacja, którą chcemy wykonać. Chcemy dzień do daty. Zatem przedział to „ d ”.

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", End Sub 

Krok 6: Ile dni musimy dodać, muszę dodać 5 dni.

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, End Sub 

Krok 7: Nasza data to „ 14-03-2019

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") End Sub 

Krok 8: Pokaż wynik zmiennej w oknie komunikatu VBA.

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") MsgBox NewDate End Sub 

Jeśli uruchomię ten kod, powinienem otrzymać datę 19-03-2019.

W moim systemowym formacie daty jest „mm-dd-rrrr”, więc wynik jest wyświetlany zgodnie z systemowymi ustawieniami daty.

Możemy to jednak zmodyfikować, stosując funkcję VBA FORMAT.

Kod:

 Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") MsgBox Format (NewDate, "dd-mmm-rrrr") End Sub 

Teraz wynik powinien wyglądać następująco: „ 19-marzec-2019 ”.

Przykład 2 - Dodaj miesiące

Aby dodać miesiące poniżej, jest kod

Kod:

 Sub DateAdd_Example2 () 'Aby dodać miesiące Dim NewDate As Date NewDate = DateAdd ("m", 5, "14-03-2019") MsgBox Format (NewDate, "dd-mmm-rrrr") End Sub 

Rezultatem będzie:

Przykład 3 - Dodaj lata

Aby dodać lata za pomocą DateAdd, użyj poniższego kodu.

Kod:

 Sub DateAdd_Example2 () 'Aby dodać rok Dim NewDate As Date NewDate = DateAdd ("rrrr", 5, "14-03-2019") MsgBox Format (NewDate, "dd-mmm-rrrr") End Sub 

Rezultatem będzie:

Przykład 4 - Dodaj kwartał

Aby dodać kwartał poniżej, jest kod

Kod:

 Sub DateAdd_Example2 () 'Aby dodać kwartał Dim NewDate As Date NewDate = DateAdd ("Q", 5, "14-03-2019") MsgBox Format (NewDate, "dd-mmm-rrrr") End Sub 

Rezultatem będzie:

Przykład nr 5 - Dodaj dzień tygodnia

Aby dodać dni tygodnia poniżej, znajduje się kod

Kod:

 Sub DateAdd_Example2() 'To add weekdays Dim NewDate As Date NewDate = DateAdd("W", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub 

The Result will be:

Example #6 – Add Week

To add week below is the code

Code:

 Sub DateAdd_Example2() 'To add Week Dim NewDate As Date NewDate = DateAdd("WW", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub 

The Result will be:

Example #7 – Add Hour

To add hour below is the code

Code:

 Sub DateAdd_Example2() 'To add hour Dim NewDate As Date NewDate = DateAdd("h", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy hh:mm:ss ") End Sub 

The Result will be

Example #8 – Subtract Date

In order to add we have supplied positive numbers, to subtract we need to supply negative numbers that are all.

In order to subtract 3 months from the supplied date below is the code.

Code:

 Sub DateAdd_Example3() 'To add hour Dim NewDate As Date NewDate = DateAdd("m", -3, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub 

The result of this code is:

If deduct 3 months from the date 14th March 2019 it will go back to the previous year.