Excel VBA DateSerial funkcija
Funkcija DateSerial VBA atgriež datumu no lietotāju sniegtajām vērtībām. Mums jāsniedz, kas ir gads, kas ir diena un kāds ir mēnesis. Rezultāts tiks balstīts uz jūsu sistēmas datuma formātu.
Zemāk ir funkcijas DATESERIAL sintakse .

# 1 - gads: mums jāievada vesels skaitlis kā kāds ir gads? Piegādājot veselus skaitļus, mums jāpatur prātā lietas.
- Mēs varam piegādāt skaitļus no 0 līdz 9999.
- Viena un divciparu skaitļi no 0 līdz 99 tiks apstrādāti no 1930. līdz 2029. gadam.
- Negatīvais vesels skaitlis tiks atņemts no 2000. gada. Piemēram, ja jūs norādāt -1, tad rezultāts būs 1999. gads 2000. gada dēļ - 1 = 1999.
# 2 - mēnesis: mums jāievada vesels skaitlis kā mēnesis? Ievadot šo numuru, mums jāpatur prātā lietas.
- Mēs varam piegādāt tikai skaitļus no 1 līdz 12.
- Ja norādītā veselā skaitļa vērtība ir 0, tas apzīmē iepriekšējā gada mēnesi “decembris”.
- Ja norādītā veselā skaitļa vērtība ir -1, tas apzīmē iepriekšējā gada mēnesi “Novembris”. Šādi palielinoties negatīvajai vērtībai, tā turpinās atspoguļot gada mēnesi.
- Ja norādītais skaitlis ir lielāks par 12, ti, ja skaitlis ir 13, tas apzīmē nākamā gada mēnesi “janvāris”. Ja skaitlis ir 14, tas tiks uzskatīts par nākamā gada mēnesi “februāris”.
# 3 - diena: mums jāievada vesels skaitlis kā diena? Ievadot šo numuru, mums jāpatur prātā lietas.
- Mēs varam ievadīt pašreizējā mēneša dienu skaitļus no 1 līdz 31.
- Ja skaitlis ir 0, tas būs iepriekšējā mēneša pēdējā diena.
- Ja skaitlis ir -1, tas būs iepriekšējā mēneša otrā pēdējā diena.
- Ja jūs norādīsit šī mēneša pēdējo dienu +1, tā būs nākamā mēneša pirmā diena. Piemēram, ja augusta pēdējā diena ir 31 un ja jūs norādāt dienu kā 31 + 1, tad tā būs septembra pirmā diena.
Kā lietot DATESERIAL funkciju VBA?
1. piemērs
Lai izmantotu funkciju DATESERIAL, sāciet rakstīt makro kodu.
1. darbība. Sāciet apakšprocedūru
Vispirms izveidojiet VBA apakšprocedūru, kā parādīts zemāk.

2. darbība: paziņojiet mainīgo
Tagad deklarējiet mainīgo kā DATE.

3. darbība. Piešķiriet šim mainīgajam DateSerial funkciju.
Tagad šim mainīgajam piešķiriet funkciju DATESERIAL.

4. solis: Tagad DateSerial funkcijā ievadiet gada, mēneša un dienas vērtības
2019. gada apgādei YEAR, 08. MONTH piegādei un 05. DAY piegādei.

5. darbība: rādīt rezultātu ziņojumu lodziņā
Tagad ziņojuma lodziņā parādiet mainīgā “Mans datums” rezultātu.
Kods:
Opcija Skaidrs apakšdatuma sērijas_piemērs1 () Dim Mydate kā Date Mydate = DateSerial (2019, 8, 5) MsgBox Mydate End Sub

6. darbība: palaidiet kodu
Tagad palaidiet šo kodu, lai redzētu zemāk norādīto datumu.

Rezultātā teikts “5.8.2019.”. Manā sistēmā datuma formāts ir “MM-DD-GGGG”, tāpēc arī rezultāts ir tajā pašā formātā.
Mēs varam arī mainīt datuma formātu, izmantojot VBA funkciju FORMAT. Lietojiet funkciju FORMAT tāpat kā tālāk.
Kods:
Opcija Skaidrs apakšdatuma sērijas_piemērs1 () Dim Mydate kā Date Mydate = DateSerial (2019, 8, 5) MsgBox formāts (Mydate, "DD-MMM-GGGG") Beigu apakšdaļa
Tas lietos formātu “DD-MMM-GGGG”, un rezultāts ir šāds.

2. piemērs
Mēs varam arī deklarēt mainīgos un piegādāt vērtības šiem mainīgajiem. Piemēram, apskatiet zemāk redzamo kodu.
Kods:
Sub DateSerial_Example2 () Dim Mydate As Date Dim MyYear As Integer Dim MyMonth As Integer Dim MyDay As Integer MyYear = 2019 MyMonth = 8 MyDay = 5 Mydate = DateSerial (MyYear, MyMonth, MyDay) MsgBox Format (Mydate, "DD-MM" ") Beigu apakšdaļa
Instead of supplying year, month, and day directly to the DATESERIAL function, we have declared variables and assigned values to them. Then later, we have supplied variables to the DATESERIAL function.
This is how we can make use of variables in VBA to store values.
Example #3
Now we will experiment with the year. I will assign the year value as 1 and see the result.

Single & Double-digit numbers in YEAR represents a year from 1930 to 2029. So 01 means 2001, 02 means 2002, and so on.
Now let’s change the month number to 0 and see the result.

Look at the code here, Year is 2019, and the month is 0. But look at the result it says 05-Dec-2019, whereas a supplied year is 2019 it says 2018 i.e., the previous year.
Tas ir tāpēc, ka, tā kā mēnesi esam piegādājuši kā funkciju 0 DATESERIAL, mēnesis tiek aizvietots līdz iepriekšējā gada pēdējam mēnesim un attiecīgi mainās arī gads.
Šādi izmēģiniet dažādus skaitļus, lai redzētu funkcijas ietekmi.
Atceramās lietas
- Jums jāzina, kurš skaitlis apzīmē gadu, mēnesi un dienas aprūpes vietu. Rūpīgi izlasiet sintakses skaidrojumu, lai saprastu.
- Rezultāts tiks balstīts uz jūsu sistēmas datuma formātu. Ja vēlaties modificētu rezultātu, jums jāpielieto FORMAT funkcija, norādot datuma formātu atbilstoši jūsu ērtībām.