VBA DateSerial Function | Paano gamitin ang DateSerial Function? (Mga Halimbawa)

Excel VBA DateSerial Function

Pag-andar ng DateSerial sa VBA ibabalik ang petsa mula sa mga halagang ibinibigay ng mga gumagamit. Kailangan nating ibigay kung ano ang taon, ano ang araw, at ano ang buwan. Ang resulta ay ibabatay sa format ng petsa ng iyong system.

Nasa ibaba ang syntax ng Pag-andar ng DATEERIAL.

#1 taon: kailangan nating ipasok ang numero ng integer kung ano ang taon? Habang nagbibigay ng bilang ng integer kailangan nating tandaan sa ibaba ang mga bagay.

  • Maaari kaming magbigay ng mga numero mula 0 hanggang 9999.
  • Ang isa at Dalawang-digit na numero mula 0 hanggang 99 ay gagamot mula 1930 hanggang 2029.
  • Ang negatibong numero ng integer ay ibabawas mula sa taong 2000. Halimbawa, kung magbibigay ka ng -1 pagkatapos ang resulta ay magiging 1999 dahil sa 2000 - 1 = 1999.

# 2 - Buwan: kailangan nating ipasok ang numero ng integer kung ano ang buwan? Habang ipinasok ang numerong ito kailangan nating tandaan sa ibaba ang mga bagay.

  • Maaari kaming magbigay ng mga numero mula 1 hanggang 12 lamang.
  • Kung ang ibinigay na halagang integer ay 0 pagkatapos ay ito ay kumakatawan sa buwan na "Disyembre" ng nakaraang taon.
  • Kung ang ibinigay na halagang integer ay -1 pagkatapos ay ito ay kumakatawan sa buwan na "Nobyembre" ng nakaraang taon. Tulad nito kapag tumaas ang negatibong halaga, mananatili itong kumakatawan sa paatras na buwan na buwan.
  • Kung ang ibinigay na numero ay higit sa 12 ibig sabihin kung ang numero ay 13 sa gayon ito ay kumakatawan sa buwan ng "Enero" ng sumusunod na taon, kung ang numero ay 14 sa gayon ay tratuhin ito bilang buwan na "Pebrero" ng susunod na taon.

# 3 - Araw: kailangan nating ipasok ang numero ng integer kung ano ang araw? Habang ipinasok ang numerong ito kailangan nating tandaan sa ibaba ang mga bagay.

  • Maaari kaming maglagay ng mga numero ng integer mula 1 hanggang 31 para sa kasalukuyang buwan ng buwan.
  • Kung ang numero ay 0 ito ay kumakatawan sa huling araw ng nakaraang buwan.
  • Kung ang numero ay -1 ito ay kumakatawan sa ikalawang huling araw ng nakaraang buwan.
  • Kung ibibigay mo ang huling araw ng buwan na ito +1 pagkatapos ito ay kumakatawan sa unang araw ng susunod na buwan. Halimbawa, kung ang huling araw ng Agosto ay 31 at kung bibigyan mo ang araw bilang 31 + 1 sa gayon ito ay kumakatawan sa unang araw ng Setyembre.

Paano gamitin ang DATEERIAL Function sa VBA?

Maaari mong i-download ang Template ng VBA DateSerial Excel dito - VBA DateSerial Excel Template

Halimbawa # 1

Upang magamit ang function na DATEERIAL simulang isulat ang macro code.

Hakbang 1: Simulan ang Sub Pamamaraan

Una, lumikha ng isang subprocedure ng VBA tulad ng ipinakita sa ibaba.

Hakbang 2: Ipahayag ang Variable

Ngayon ideklara ang isang variable bilang DATE.

Hakbang 3: Magtalaga ng DateSerial Function sa variable na iyon.

Ngayon para sa variable na ito magtalaga ng pagpapaandar ng DATEERIAL.

Hakbang 4: Ngayon ipasok ang mga halagang taon, buwan at araw sa pagpapaandar ng DateSerial

Para sa supply ng YEAR 2019, para sa MONTH supply 08, at para sa DAY supply 05.

Hakbang 5: Ipakita ang Resulta sa Box ng Mensahe

Ipakita ngayon ang resulta ng variable na "Aking petsa" sa kahon ng mensahe.

Code:

 Opsyon na Maliwanag na Sub DateSerial_Example1 () Madilim ang Mydate Bilang Petsa Mydate = DateSerial (2019, 8, 5) MsgBox Mydate End Sub 

Hakbang 6: Patakbuhin ang code

Patakbuhin ngayon ang code na ito upang makita ang sa ibaba ng petsa.

Sinasabi ng resulta na "8/5/2019". Sa format ng petsa ng aking system ay nasa anyo ng "MM-DD-YYYY", kaya't kung gayon ang resulta ay nasa parehong format din.

Maaari din nating baguhin ang format ng petsa sa pamamagitan ng paggamit ng FORMAT function sa VBA. Ilapat ang pagpapaandar na FORMAT tulad ng nasa ibaba.

Code:

 Opsyon na Maliwanag na Sub DateSerial_Example1 () Madilim na Mydate Bilang Petsa Mydate = DateSerial (2019, 8, 5) Format ng MsgBox (Mydate, "DD-MMM-YYYY") End Sub 

Ilalapat nito ang format sa "DD-MMM-YYYY" at ang resulta ay ang mga sumusunod.

Halimbawa # 2

Maaari rin naming ideklara ang mga variable at maibigay ang mga halaga sa mga variable na iyon. Para sa isang halimbawa tingnan ang code sa ibaba.

Code:

 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-MMM-YY ") Tapusin ang Sub 

Sa halip na magbigay ng direkta sa taon, buwan, at araw sa pagpapaandar ng DATEERIAL ay idineklara namin ang mga variable at naitalagang mga halaga sa kanila. Pagkatapos ay nag-supply kami ng mga variable sa pagpapaandar ng DATEERIAL.

Ito ay kung paano namin magagamit ang mga variable sa VBA upang maiimbak ang mga halaga.

Halimbawa # 3

Ngayon ay mag-e-eksperimento kami sa taon. Itatalaga ko ang halagang taon bilang 1 at tingnan ang resulta.

Ang mga numero ng Single at Double-digit sa TAON ay kumakatawan sa isang taon mula 1930 hanggang 2029. Kaya ang 01 ay nangangahulugang 2001, 02 ay nangangahulugang 2002 at iba pa.

Ngayon baguhin natin ang numero ng buwan sa 0 at tingnan ang resulta.

Tingnan ang code dito, ang Taon ay 2019, at ang buwan ay 0. Ngunit tingnan ang resulta na sinasabi nito 05-Dis-2019, samantalang ang isang naibigay na taon ay 2019 sinasabi nito ang 2018 ibig sabihin noong nakaraang taon.

Ito ay sapagkat dahil naibigay namin ang buwan bilang 0 DATEERIAL na pagpapaandar ay tumatagal ng buwan sa huling buwan ng nakaraang taon at binago rin ang taon nang naaayon.

Tulad nito subukan ang iba't ibang mga numero upang makita ang epekto ng pagpapaandar.

Bagay na dapat alalahanin

  • Kailangan mong malaman kung anong numero ang kumakatawan sa aling taon, buwan, at pag-aalaga ng bata. Basahing mabuti ang paliwanag sa Syntax upang maunawaan.
  • Ang resulta ay ibabatay sa format ng petsa ng iyong system, kung nais mo ng binagong resulta kung gayon kailangan mong ilapat ang pagpapaandar na FORMAT na banggitin ang format ng petsa ayon sa iyong kaginhawaan.