VBA kuupäevaseeria funktsioon - Kuidas kasutada funktsiooni DateSerial? (Näited)

Lang L: none (table-of-contents)

Exceli VBA kuupäevaseeria funktsioon

Funktsioon DateSerial tagastab kuupäeva kasutajate edastatud väärtustest. Peame pakkuma, mis on aasta, mis on päev ja mis kuu. Tulemus põhineb teie süsteemi kuupäevavormingul.

Allpool on funktsiooni DATESERIAL süntaks .

# 1 - aasta: peame sisestama täisarvu, mis on aasta? Täisarvude sisestamise ajal peame silmas pidama asju.

  • Pakume numbreid vahemikus 0 kuni 9999.
  • Ühe- ja kahekohalisi numbreid 0–99 töödeldakse aastatel 1930–2029.
  • Negatiivne täisarv lahutatakse aastast 2000. Näiteks kui sisestate -1, siis on tulemus 2000. aasta tõttu 1999 - 1 = 1999.

# 2 - Kuu: peame sisestama täisarvu, mis on kuu? Selle numbri sisestamise ajal peame silmas pidama asju.

  • Pakume ainult numbreid 1 kuni 12.
  • Kui sisestatud täisarv on 0, tähistab see eelmise aasta kuud “detsember”.
  • Kui sisestatud täisarv on -1, tähistab see eelmise aasta kuud “november”. Niimoodi, kui negatiivne väärtus suureneb, näitab see jätkuvalt tagasiulatuvat aasta kuud.
  • Kui esitatud number on üle 12, st kui number on 13, tähistab see järgmise aasta jaanuari kuud. Kui arv on 14, käsitletakse seda järgmise aasta veebruarikuisena.

# 3 - päev: peame sisestama täisarvu, mis on päev? Selle numbri sisestamise ajal peame silmas pidama asju.

  • Saame sisestada praeguste kuupäevade täisarvud vahemikus 1 kuni 31.
  • Kui arv on 0, tähistab see eelmise kuu viimast päeva.
  • Kui arv on -1, tähistab see eelmise kuu teist viimast päeva.
  • Kui sisestate selle kuu viimase päeva +1, tähistab see järgmise kuu esimest päeva. Näiteks kui augusti viimane päev on 31 ja kui sisestate päeva 31 + 1, siis tähistab see septembri esimest päeva.

Kuidas kasutada funktsiooni DATESERIAL VBA-s?

Näide 1

Funktsiooni DATESERIAL kasutamiseks alustage makrokoodi kirjutamist.

1. samm: alustage alamprotseduuri

Kõigepealt looge VBA alamprotseduur, nagu allpool näidatud.

2. samm: deklareerige muutuja

Nüüd deklareerige muutuja kuupäevaks DATE.

3. samm: määrake sellele muutujale DateSerial-funktsioon.

Selle muutuja jaoks määrake funktsioon DATESERIAL.

4. samm: sisestage nüüd funktsiooni DateSerial aasta, kuu ja päeva väärtused

Aastaks YEAR 2019, MONTH varuks 08 ja DAY varuks 05.

5. samm: kuvage sõnumikastis tulemus

Nüüd kuvage teatekastis muutuja “Minu kuupäev” tulemus.

Kood:

Valik Selgesõnaline alamkuupäevaseeria_näide1 () Dim Mydate kui kuupäeva Mydate = DateSerial (2019, 8, 5) MsgBox Mydate End Sub
6. samm: käivitage kood

Nüüd käivitage see kood, et näha kuupäeva allolevat osa.

Tulemuseks on „5.8.2019”. Minu süsteemis on kuupäevavorming kujul “KK-PP-AAAA”, seetõttu on tulemus ka samas vormingus.

Kuupäeva vormingut saame muuta ka VBA funktsiooni FORMAT abil. Rakenda funktsioon FORMAT nagu allpool.

Kood:

Valik Selgesõnaline alamkuupäevaseeria_näide1 () Dim Mydate Kuupäeva Mydate = DateSerial (2019, 8, 5) MsgBoxi vorming (Mydate, "PP-KK-AAAA") Lõpp-alam

See kehtib vormingus „PP-KK-AAAA” ja tulemus on järgmine.

Näide 2

Samuti võime deklareerida muutujaid ja edastada nende muutujate väärtused. Näiteks vaadake allolevat koodi.

Kood:

Sub DateSerial_Example2 () Dim Mydate kui 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 ") Lõpeta alam

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.

Selle põhjuseks on asjaolu, et kuna kuu on sisestatud kui funktsioon 0 DATESERIAL, võtab kuu eelmise aasta viimase kuu ja muudab vastavalt ka aastat.

Nii proovige funktsiooni mõju nägemiseks erinevaid numbreid.

Asjad, mida meeles pidada

  • Peate teadma, milline number tähistab aastat, kuud ja päevahoidu. Lugege mõistmiseks hoolikalt süntaksi selgitust.
  • Tulemus põhineb teie süsteemi kuupäevavormingul. Kui soovite muudetud tulemust, peate rakendama vormindamise funktsiooni, mainides kuupäeva vormingut vastavalt teie mugavusele.

Huvitavad Artiklid...