Co to jest VBA DateSerial?

Funkcja VBA DATESERIAL to wbudowana funkcja w programie Excel. Funkcja DATESERIAL zwraca datę z podaną wartością roku, miesiąca i dnia. Powiedzmy na przykład, czy dzisiejsza data to 18 lipca 2019 r. Niektórzy użytkownicy mogą napisać ją jako 18 lipca 19 lub 18 lipca 19. Formaty dat mogą być różne dla wielu użytkowników. Daje nam to żmudne zadanie pracy z większą liczbą dat w różnych formatach.

Jak zdefiniowano powyżej w opisie problemu, format dat może być różny dla wielu użytkowników. W tym celu funkcja VBA jest dostępna w języku VBA, aby pomóc. Bardzo dobrą funkcją jest tworzenie własnych dat z wartościami, które zdecydujemy się zdefiniować. Poinformuj nas szczegółowo o tej funkcji. Funkcja DateSerial w języku VBA jest funkcją daty i godziny, dlatego zwracana wartość dla tej funkcji to DATA. Metoda użycia składni tej funkcji będzie następująca.

Składnia VBA DateSerial

Składnia funkcji DateSerial VBA w programie Excel jest następująca:

Potrzeba trzech argumentów rok, miesiąc i dzień.

  • Rok: Dopuszczalny zakres dla tej części argumentu w funkcji wynosi od 100 do 9999. Typ danych dla argumentu powinien być liczbą całkowitą.
  • Miesiąc: Dopuszczalny zakres dla tej części argumentu w funkcji wynosi od 1 do 12. Typ danych dla argumentu powinien być liczbą całkowitą.
  • Dzień: Dopuszczalny zakres dla tej części argumentu w funkcji wynosi od 1-31. Typ danych dla argumentu powinien być liczbą całkowitą.

Ale tutaj jest fajna część tej funkcji. Jeśli podamy argument powyżej zaakceptowanego zakresu, funkcja zamiast tego zwraca błąd, oblicza dalszą część zakresu i wyświetla datę. Na przykład, jeśli podam dane wejściowe jako datę szeregową (2019, 14, 02), teraz wiemy, że może być tylko 12 miesięcy w roku, ale podałem 14 jako argument. Funkcja nie zwróci błędu, ale doda dwa dodatkowe miesiące w bieżącym roku, więc wynikiem będzie 2020-02-02.

Jak korzystać z funkcji VBA DateSerial w programie Excel?

Nauczymy się korzystać z funkcji VBA DateSerial z kilkoma przykładami w programie Excel.

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

Przetestujmy tę funkcję na kilku przykładach, dzięki którym wszystko stanie się dla nas wyraźniejsze.

Przykład # 1 - VBA DateSerial

Najpierw podajmy do zmiennej prostą datę za pomocą funkcji szeregowej daty i zobaczmy, jakie wyniki otrzymujemy.

Krok 1: Zanim zaczniemy od naszych przykładów, najpierw upewnij się, że masz włączoną kartę programisty, a następnie przejdź do sekcji kodu, aby otworzyć Edytor VB, klikając Visual Basic, tak jak pokazano na poniższym obrazku.

Krok 2: W oknie pokazanym powyżej kliknij kartę Wstaw, aby wstawić moduł. Będziemy pracować w tym samym module dla wszystkich naszych przykładów.

Krok 3: Zainicjuj podprocedurę w następujący sposób i zadeklaruj zmienną jako typ danych data.

Kod:

 Sub Sample () Dim Dt As Date End Sub 

Krok 4: Teraz podajmy datę zmiennej za pomocą funkcji szeregowej daty.

Kod:

 Podpróbka () Dim Dt As Date Dt = DateSerial (2019, 7, 2) End Sub 

Krok 5: Wyświetl wartość przechowywaną w naszej zmiennej za pomocą funkcji msgbox.

Kod:

 Sub Próbka () Dim Dt As Date Dt = DateSerial (2019, 7, 2) MsgBox Dt End Sub 

Krok 6: Kiedy wykonamy powyższy kod, otrzymamy następujący wynik.

Przykład # 2 - VBA DateSerial

Teraz przetestujmy teorię, którą omówiliśmy powyżej we wstępie, że jeśli podamy wartości oprócz akceptowanego zakresu, a funkcja obliczy nam datę.

Krok 1: W tym samym module rozpocznij kolejną podprocedurę w następujący sposób.

Kod:

 Sub Sample1 () End Sub 

Krok 2: Teraz zdefiniuj zmienną z typem danych daty.

Kod:

 Sub Próbka 1 () Dim Dt As Data End Sub 

Krok 3: Podajmy dane wejściowe do zmiennej DT za pomocą funkcji szeregowej daty, jak pokazano poniżej.

Kod:

 Sub Próbka 1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) End Sub 

Krok 4: Wyświetl wartość przechowywaną w zmiennej Dt za pomocą funkcji msgbox.

Kod:

 Sub Próbka 1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) MsgBox Dt End Sub 

Krok 5: Teraz wykonaj powyższy kod i zobacz wynik poniżej w następujący sposób.

Widzimy, że rok się zmienił, ponieważ argumentowaliśmy za dwa dodatkowe miesiące. Zasadniczo ta funkcja dodała 14 miesięcy do roku 2019, co dało nam drugi miesiąc 2020 roku i drugą datę.

Przykład # 3 - VBA DateSerial

W powyższych przykładach przedstawiliśmy argumenty w sposób ogólny. Ale dyskutowaliśmy o tym, jak użytkownicy mogą wprowadzać absurdalne wartości w sekcji dat jako format, ponieważ pisanie dat różni się w zależności od osoby. Porównamy dwa formaty daty za pomocą funkcji szeregowej daty w tym przykładzie.

Krok 1: W tym samym module zdefiniuj inną podprocedurę w następujący sposób dla trzeciego przykładu.

Kod:

 Sub Sample2 () End Sub 

Krok 2: W tym scenariuszu zdefiniuj dwie zmienne jako daty, jak pokazano poniżej.

Kod:

 Sub Sample2 () Dim Dt1, Dt2 As Date End Sub 

Krok 3: Teraz w pierwszej zmiennej podajmy datę w prosty, regularny sposób, używając funkcji dateserial.

Kod:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) End Sub 

Krok 4: Teraz dla drugiej zmiennej podajmy datę w nieregularny sposób, używając funkcji dateserial, jak pokazano poniżej.

Kod:

 Sub Próbka2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) End Sub 

Krok 5: Teraz wydrukuj obie te wartości za pomocą funkcji msgbox.

Kod:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) MsgBox Dt1 & "" & Dt2 End Sub 

Krok 6: Wykonaj powyższy kod, aby znaleźć następujący wynik pokazany poniżej.

Widzimy, że obie daty są takie same. Dwucyfrowy rok 19 jest interpretowany jako 2019.

Rzeczy do zapamiętania

  • Jest to funkcja daty i godziny, więc wyjście ma datę.
  • Jeśli wartość podana dla funkcji jest powyżej akceptowanego zakresu funkcji, automatycznie oblicza datę, a nie podaje błędu.
  • Jeśli wartości podane w argumentach są większe niż wartość, którą może pomieścić liczba całkowita, funkcja zwraca błąd.

Polecane artykuły

Jest to przewodnik po VBA DateSerial. Tutaj omawiamy sposób korzystania z funkcji Excel VBA DateSerial wraz z praktycznymi przykładami i szablonem Excel do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. VBA InStr wyjaśniono za pomocą przykładów
  2. Typ danych VBA Integer
  3. VBA ISNULL objaśniony przykładami
  4. Format daty VBA (przykłady)

Kategoria: