Pag-andar ng VBA Month | Paano Kumuha ng Numero ng Buwan mula sa Petsa?

Buwan ng Excel VBA

VBA Month Function ay isang inbuilt na function na ginamit upang makakuha ng buwan mula sa isang petsa at ang output na ibinalik ng pagpapaandar na ito ay integer mula 1 hanggang 12. Ang pagpapaandar na ito ay kumukuha lamang ng bilang ng buwan mula sa naibigay na halaga ng petsa.

Halimbawa, kung ang petsa ay 28-Mayo-2019 pagkatapos ay upang makuha ang numero ng buwan mula sa petsang ito maaari naming gamitin ang pagpapaandar ng MONTH.

Paano Gumamit ng Buwan na Pag-andar sa VBA?

Nasa ibaba ang syntax ng pagpapaandar ng MONTH.

Kailangan lang naming ibigay ang petsa kung saan sinusubukan naming kunin ang numero ng buwan.

Maaari mong i-download ang VBA Month Excel Template na ito dito - VBA Month Excel Template

Halimbawa # 1

Makikita natin kung paano magsulat ng isang code upang makuha ang numero ng buwan mula sa petsa. Dadalhin namin ang petsa bilang "Ika-10 ng Okt 2019 ″.

Hakbang 1: Simulan ang pamamaraan ng macro.

Code:

 Sub Month_Example1 () End Sub 

Hakbang 2: Tukuyin ang variable na hahawak sa halaga ng petsa. Dahil itinatago namin ang halaga ng data ang aming uri ng data ay dapat na "Petsa". Kaya ideklara ang variable at italaga ang uri ng data bilang "Petsa" sa idineklarang variable.

Code:

 Sub Month_Example1 () Dim Dimate Bilang Petsa ng Pagtatapos ng Sub 

Hakbang 3: Para sa variable na ito italaga ang halaga ng petsa ng 10 Oktubre 2019.

Code:

 Sub Month_Example1 () Dim Dimate Bilang Petsa DDate = "10 Okt 2019" Katapusan Sub 

Hakbang 4: Italaga ngayon ang numero ng buwan upang ideklara ang isa pang variable bilang "Integer".

Code:

 Sub Month_Example1 () Dim Dimate Bilang Petsa Dim Dim MonthNum As Integer DDate = "10 Okt 2019" End Sub 

Tandaan: Ang dahilan kung bakit namin idineklara ang variable bilang Integer dahil ang bilang ng aming buwan ay nagtatapos sa 12 lamang. Kaya't ang uri ng data ng integer ay maaaring humawak sa numerong ito.

Hakbang 5: Para sa variable na ito, bubuksan namin ang pagpapaandar ng MONTH.

Code:

 Sub Month_Example1 () Dim Dimate Bilang Petsa Dim Dim MonthNum As Integer DDate = "10 Okt 2019" MonthNum = Month (End Sub 

Hakbang 6: Pag-andar ng buwan na humihiling ng "Petsa" na kailangang ibigay upang makuha ang numero ng buwan. Dahil naimbak na namin ang na-target na petsa sa variable na "DDate" na ibigay ang variable na ito bilang input parameter para sa buwan na pagpapaandar.

Code:

 Sub Month_Example1 () Dim Dimate Bilang Petsa Dim Dim MonthNum As Integer DDate = "10 Okt 2019" MonthNum = Month (DDate) End Sub 

Hakbang 7: Ngayon ang function na "Buwan" ay ibabalik ang numero ng buwan mula sa naibigay na petsa sa variable na "MonthNum" at sa wakas ay ipakita ang resulta sa isang kahon ng mensahe sa VBA.

Code:

 Sub Month_Example1 () Dim DDate Bilang Petsa Dim Dim MonthNum As Integer DDate = "10 Okt 2019" MonthNum = Month (DDate) MsgBox MonthNum End Sub 

Patakbuhin ang code at tingnan ang numero ng buwan sa kahon ng mensahe.

Output:

Kaya, ang numero ng buwan mula sa ibinigay na petsa ay 10 ibig sabihin Oktubre buwan.

Halimbawa # 2

Ngayon ay kukuha kami ng mga sanggunian sa cell para sa pag-coding. Nasa ibaba ang petsa na mayroon kami sa worksheet.

Kaya mula sa halaga ng petsa ng cell A2, kailangan nating kunin ang numero ng buwan sa cell B2.

Code:

 Sub Month_Example2 () Saklaw ("B2"). Halaga = End Sub 

Buksan ang pagpapaandar ng MONTH at ibigay ang petsa bilang halaga ng RANGE A2.

Code:

 Sub Month_Example2 () Saklaw ("B2"). Halaga = Buwan (Saklaw ("A2")) Katapusan Sub 

Ang dahilan kung bakit kami nag-supply ng Saklaw ng A2 na cell dahil sa oras na ito ang aming petsa ay nasa cell A2, kaya't pareho ang magiging sanggunian.

Ipatupad ngayon ang code at kunin ang numero ng buwan mula sa petsa sa cell B2.

Narito ka nakuha namin ang numero ng buwan sa cell B2.

Halimbawa # 3

Kinuha namin ang buwan para sa solong-cell na petsa ngunit paano kung mayroon kaming maraming mga hilera ng data tulad ng sa ibaba.

Sa mga kasong ito, kailangan naming loop sa mga cell at isagawa ang gawain ng pagkuha ng numero ng buwan mula sa bawat kaukulang petsa.

Ang code sa ibaba ang gagawa ng trabaho para sa amin.

Code:

 Sub Month_Example3 () Dim k As Long For k = 2 To 12 Cells (k, 3). Value = Month (Cells (k, 2). Value) Susunod k End Sub 

Ang gagawin ng code na ito ay mag-loop sa mga hilera mula 2 hanggang 12 at i-extract ang numero ng buwan mula sa pangalawang haligi at iimbak ang resulta sa ikatlong haligi.

Mga Bagay na Dapat Tandaan

  • Ang MONTH ay isang pagpapaandar ng worksheet pati na rin ang pagpapaandar ng VBA.
  • Nangangailangan ang MONTH ng wastong sanggunian sa petsa kung hindi makakakuha kami ng isang mensahe ng error.
  • Kung ang numero ng buwan ay 12 pagkatapos ay magtapon ito ng isang mensahe ng error.