VBA DateAdd - Dodaj i odejmij daty za pomocą funkcji 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ć dwa 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?

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: przypisz wartość tej zmiennej.

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 to „mm-dd-rrrr”, więc wynik jest wyświetlany zgodnie z systemowymi ustawieniami daty.

Możemy to jednak zmienić, 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 znajduje się kod

Kod:

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

The result will be:

Example #3 - Add Years

To add years using DateAdd, use the below code.

Code:

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

The Result will be:

Example #4 - Add Quarter

To add quarter below is the code.

Code:

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

The Result will be:

Example #5 - Add Weekday

To add weekdays below is the code.

Code:

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 the 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, and we need to supply negative numbers that are all.

Aby odjąć 3 miesiące od podanej daty, poniżej znajduje się kod.

Kod:

Sub DateAdd_Example3 () 'Aby dodać godzinę Dim NewDate As Date NewDate = DateAdd ("m", -3, "14-03-2019") MsgBox Format (NewDate, "dd-mmm-rrrr") End Sub

Wynikiem tego kodu jest:

I odjąć 3 miesiące od dnia 14 th marca 2019 roku będzie wrócić do poprzedniego roku.

Interesujące artykuły...