Format ng VBA | Paano gamitin ang VBA Format Function? (Mga Halimbawa)

Pag-andar ng Format ng Excel VBA

Pag-andar ng format sa VBA ay ginagamit upang mai-format ang mga naibigay na halaga sa nais na format, ang pagpapaandar na ito ay maaaring magamit para sa pag-format ng mga petsa o numero o anumang mga halagang trigonometrical, ang pagpapaandar na ito ay may dalawang mandatoryong argumento, ang isa ay ang input na kinuha sa anyo ng isang string at ang pangalawang argument ay ang uri ng format na nais naming gamitin halimbawa kung gumagamit kami ng Format (.99, "Porsyento") bibigyan kami nito ng resulta bilang 99%.

Sa VBA kailangan nating gamitin ang pagpapaandar na tinatawag na "FORMAT" upang mag-apply sa format sa mga cell. Ang pag-format ng Excel ay isa sa mga mahahalagang konsepto upang makabisado. Ang mga karaniwang diskarte sa pag-format na ginagamit nating lahat sa pang-araw-araw na gawain ay ang "format ng petsa, format ng oras, pag-format ng numero, at iba pang mahahalagang mga code ng pag-format". Sa regular na worksheet ng excel ay na-hit lang namin ang pagpipiliang format excel cell at isinasagawa ang tungkulin sa pag-format sa pamamagitan ng paglalapat ng naaangkop na code ng pag-format. Gayunpaman, sa VBA hindi ito tuwid na pasulong tulad ng aming diskarte sa worksheet.

Syntax

  • Pagpapahayag: Ito ay walang anuman kundi ang halagang nais naming mai-format. Sa pagiging teknikal ng VAB tinatawag itong Expression.
  • [Format]: Ano ang format na nais mong ilapat sa ekspresyon napili mo? Mayroon kaming dalawang uri ng pag-format dito, ang isa ay ang tinukoy ng gumagamit na format at ang pangalawa ay ang built-in na format.

    Narito mayroon kaming Mga Format ng Petsa ng VBA, Mga Format ng Numero, at Mga Format ng Teksto.

    Ang mga Format ng Petsa ng VBA ay may isang maikling petsa, mahabang petsa, katamtamang petsa, at pangkalahatang petsa.

    Ang Mga Format ng Numero ay mayroong Pera, Pamantayan, Porsyento, Siyentipiko, Oo o Hindi, Tama o Mali, at Bukas o Naka-off

  • [Unang Araw ng Linggo]: Ano ang unang araw ng iyong linggo? Maaari kaming pumili ng anumang araw mula sa listahan. Nasa ibaba ang listahan ng mga araw at naaangkop na mga code.

  • [Unang Linggo ng Taon]: Ano ang unang linggo ng taon? Tinutukoy nito ang linggo na dapat gamitin bilang pinakaunang linggo ng taon.

Paano gamitin?

Maaari mong i-download ang Template ng Format ng VBA dito - Template ng Format ng VBA

Ok, ilapat natin ang pagpapaandar na ito nang praktikal upang maunawaan ang pag-andar ng pagpapaandar ng FORMAT. Ipagpalagay na mayroon ka ng numero 8072.56489 at nais mong ilapat ang pag-format ng numero dito. Sundin ang mga hakbang sa ibaba upang mailapat dito ang pag-format ng numero.

Hakbang 1: Magsimula ng isang excel macro at tukuyin ang variable bilang isang "lubid" uri ng datos.

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String End Sub 

Hakbang 2: Magtalaga ng isang halaga sa k bilang aming numero i.e. 8072.56489

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String K = 8072.56489 End Sub 

Hakbang 3: Ipakita angk”Na halaga sa kahon ng mensahe ng VBA.

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String K = 8072.56489 MsgBox K End Sub 

Hakbang 4: Kung patakbuhin mo ang macro na ito makukuha namin sa ibaba ang resulta.

Ang resulta ay dahil itinalaga namin ang halaga sa variable na "k". Ngunit kailangan naming maglapat ng ilang pag-format sa numerong ito upang gawin itong maganda.

Hakbang 5: Sa halip na direktang magtalaga ng isang halaga sa “k”Gamitin natin ang pagpapaandar na FORMAT.

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String K = Format (MsgBox K End Sub 

Hakbang 6: Ngayon para sa Expression italaga ang numero 8072.56489.

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String K = Format (8072.56489, MsgBox K End Sub 

Hakbang 7: Sa pagpipilian sa pag-format maaari kaming gumamit ng built-in na format o maaari naming gamitin ang aming sariling code sa pag-format. Ngayon ay gagamit ako ng built-in na istilo ng pag-format bilang "Pamantayan”.

Code:

 Sub Worksheet_Function_Example1 () Dim K Bilang String K = Format (8072.56489, "Standard") MsgBox K End Sub 

Hakbang 8: Patakbuhin ngayon ang code na ito at tingnan ang resulta ng kahon ng mensahe.

Ok, mayroon kaming kuwit (,) bilang isang libong separator at decimal ay bilugan hanggang sa dalawang digit lamang.

Tulad nito, maaari naming gamitin ang maraming iba pang mga built-in na istilo ng pag-format upang mailapat ang pag-format. Nasa ibaba ang ilan sa mga code na inilapat ko.

# 1 - Format ng Pera

Code:

 Sub Worksheet_Function_Example2 () Dim K Bilang String K = Format (8072.56489, "Currency") MsgBox K End Sub 

Resulta:

# 2 - Naayos na Format

Code:

 Sub Worksheet_Function_Example3 () Dim K Bilang String K = Format (8072.56489, "Fixed") MsgBox K End Sub 

Resulta:

# 3 - Porsyento ng Porsyento

Code:

 Sub Worksheet_Function_Example4 () Dim K Bilang String K = Format (8072.56489, "Porsyento") MsgBox K End Sub 

Resulta:

# 4 - Mga Format na Tinukoy ng Gumagamit

Ok, ngayon makikita natin ang ilan sa mga format na tinukoy ng gumagamit.

Code:

 Sub Worksheet_Function_Example5 () Dim K Bilang String K = Format (8072.56489, "#. ##") MsgBox K End Sub 

Resulta:

Code:

 Sub Worksheet_Function_Example5 () Dim K Bilang String K = Format (8072.56489, "#, ##. ##") MsgBox K End Sub 

Resulta:

# 5 - Petsa FORMAT

Nakita namin ang ilan sa mahahalagang bilang ng mga diskarte sa pag-format. Ngayon ay kakailanganin naming gamitin ang pagpapaandar ng FORMAT upang mag-format ng petsa sa VBA.

Mayroon akong nakasulat na code upang maipakita ang resulta ng petsa sa pamamagitan ng variable.

Code:

 Sub Worksheet_Function_Example6 () Dim K Bilang String K = 13 - 3 - 2019 MsgBox K End Sub 

Kapag pinatakbo ko ang code na ito hindi ako makakakuha ng tumpak na petsa sa halip ay nakalulungkot ang resulta.

Upang makuha ang tumpak na mga petsa, kailangan naming italaga dito ang format ng petsa. Ang unang bagay na kailangan nating gawin ay ibigay ang petsa sa mga dobleng quote at ilapat ang format ng petsa.

Code:

 Sub Worksheet_Function_Example6 () Dim K As String K = Format ("10 - 3 - 2019", "Long Date") MsgBox K End Sub 

Kung patakbuhin ang code na ito ngayon, makakakuha ako ng wastong mahabang petsa.

Ang "Long Date" ay isang built-in na format, katulad na maaari mong gamitin ang mga pagpipiliang "maikling petsa", at "medium date".

Bagay na dapat alalahanin

  • Ang halagang ibinalik ng FORMAT function ay ang string.
  • Maaari din naming magamit ang aming sariling mga code ng pag-format ng petsa, oras, at numero tulad ng kung paano namin ginagamit sa pag-format ng worksheet.
  • Ang FORMAT ay isang pagpapaandar ng VBA at magagamit lamang sa VBA wala sa worksheet.