VBA DateSerial funkcija - Kaip naudoti „DateSerial“ funkciją? (Pavyzdžiai)

„Excel VBA DateSerial“ funkcija

Funkcija „DateSerial“ VBA pateikia datą iš vartotojų pateiktų reikšmių. Turime pateikti, kas yra metai, kokia diena ir koks mėnuo. Rezultatas bus pagrįstas jūsų sistemos datos formatu.

Žemiau yra DATESERIAL funkcijos sintaksė .

# 1 - metai: mes turime įvesti sveikąjį skaičių kaip kokie yra metai? Pateikdami sveikus skaičius, turime nepamiršti dalykų.

  • Mes galime pateikti numerius nuo 0 iki 9999.
  • Vieno ir dviejų skaitmenų skaičiai nuo 0 iki 99 bus apdorojami nuo 1930 iki 2029 m.
  • Neigiamas sveikasis skaičius bus atimtas iš 2000 metų. Pavyzdžiui, jei pateikiate -1, rezultatas bus 1999 m., Nes 2000 m. - 1 = 1999.

# 2 - mėnuo: turime įvesti sveikąjį skaičių kaip koks mėnuo? Įvesdami šį numerį turime nepamiršti dalykų.

  • Mes galime pateikti tik numerius nuo 1 iki 12.
  • Jei pateikta sveiko skaičiaus vertė yra 0, tai reiškia ankstesnių metų „gruodžio“ mėnesį.
  • Jei pateikta sveiko skaičiaus reikšmė yra -1, tai reiškia ankstesnių metų „lapkričio“ mėnesį. Panašiai, kai neigiama vertė padidės, ji bus rodoma atgalinių metų mėnesį.
  • Jei pateiktas skaičius yra didesnis nei 12, ty jei skaičius yra 13, tai reiškia kitų metų mėnesį „sausis“. Jei skaičius yra 14, jis bus laikomas kitų metų „vasario“ mėnesiu.

# 3 - Diena: turime įvesti sveikąjį skaičių kaip diena? Įvesdami šį numerį turime nepamiršti dalykų.

  • Galime įvesti einamojo mėnesio dienų sveikuosius skaičius nuo 1 iki 31.
  • Jei skaičius yra 0, tai reiškia paskutinę praėjusio mėnesio dieną.
  • Jei skaičius yra -1, tai reiškia antrą paskutinę praėjusio mėnesio dieną.
  • Jei pateikiate paskutinę šio mėnesio dieną +1, tai reiškia kito mėnesio pirmą dieną. Pvz., Jei paskutinė rugpjūčio diena yra 31 ir jei nurodysite dieną kaip 31 + 1, tai bus rugsėjo pirmoji diena.

Kaip naudoti DATESERIAL funkciją VBA?

1 pavyzdys

Norėdami naudoti DATESERIAL funkciją, pradėkite rašyti makrokodą.

1 veiksmas: pradėkite antrinę procedūrą

Pirmiausia sukurkite VBA subprocedūrą, kaip parodyta žemiau.

2 žingsnis: paskelbkite kintamąjį

Dabar skelbkite kintamąjį kaip DATE.

3 žingsnis: priskirkite „DateSerial“ funkciją šiam kintamajam.

Dabar šiam kintamajam priskirkite funkciją DATESERIAL.

4 žingsnis: Dabar „DateSerial“ funkcijoje įveskite metų, mėnesio ir dienos reikšmes

2019 m. Tiekimui YEAR, 08 mėn. MONTH tiekimui ir 05 DAY tiekimui.

5 žingsnis: Rodyti rezultatą pranešimų laukelyje

Dabar pranešimo laukelyje parodykite kintamojo „Mano data“ rezultatą.

Kodas:

Parinktis Aiškus antrinis „Date Date“ Serial_Example1 () „Dim Mydate“ kaip „Data Mydate“ = „DateSerial“ (2019, 8, 5) „MsgBox Mydate End Sub“
6 veiksmas: paleiskite kodą

Dabar paleiskite šį kodą, kad pamatytumėte žemiau datą.

Rezultatas sako: „2019-08-05“. Mano sistemoje datos formatas yra „MM-DD-MMMM“, todėl rezultatas taip pat yra to paties formato.

Datos formatą taip pat galime pakeisti naudodami VBA funkciją FORMAT. Taikykite FORMAT funkciją, kaip nurodyta toliau.

Kodas:

Parinktis Aiškus antrinis „DateSerial_Example1“ () Dim Mydate as Date Mydate = DateSerial (2019, 8, 5) MsgBox Format (Mydate, "DD-MMM-YYYY") End Sub

Tai bus taikoma „DD-MMM-YYYY“ formatu, o rezultatas bus toks.

2 pavyzdys

Mes taip pat galime deklaruoti kintamuosius ir pateikti tų kintamųjų reikšmes. Pavyzdžiui, pažvelkite į žemiau pateiktą kodą.

Kodas:

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" ") Pabaigos antr

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.

Taip yra todėl, kad kadangi mėnesį pateikėme kaip „0 DATESERIAL“ funkciją, mėnuo užtruks nuo praėjusių metų praėjusio mėnesio ir atitinkamai pakeis metus.

Panašiai išbandykite skirtingus skaičius, kad pamatytumėte funkcijos poveikį.

Ką reikia atsiminti

  • Turite žinoti, kuris skaičius nurodo metus, mėnesį ir dienos priežiūros paslaugas. Atidžiai perskaitykite sintaksės paaiškinimą, kad suprastumėte.
  • Rezultatas bus pagrįstas jūsų sistemos datos formatu. Jei norite modifikuoto rezultato, turite pritaikyti funkciją FORMATAS, kad jums būtų patogiau paminėti datos formatą.

Įdomios straipsniai...