VBA tekst | Kuidas kasutada funktsiooni VBA Excelis tekstifunktsiooni? (koos näidetega)

Tekst on Exceli töölehe funktsioon, kuid seda saab kasutada ka VBA-s, kasutades samal ajal omadust vahemik, selle funktsiooni funktsioon sarnaneb töölehe funktsiooniga ja see võtab sama palju argumente, mis on väärtused, mis tuleb sisestada teisendatud ja määratud numbrivorming.

Exceli VBA tekstifunktsioon

TEXT on töölehega saadaval olev funktsioon, kuid kahjuks pole see Exceli VBA sisseehitatud funktsioon. Sellele funktsioonile juurdepääsemiseks peame VBA-s kasutama töölehe funktsiooniklassi objekti. Exceli tekstifunktsioon teisendab väärtuse määratud arvuvorminguks.

Selle funktsiooni üheks probleemiks on argumendid. Alati, kui kasutame VBA töölehe funktsiooniklassi, ei näe me selgelt lõigatud süntaksit sarnaselt meie töölehele. Seal on lihtsalt öeldud “Arg1” ja “Arg2”.

  • Arg1 on väärtus, millele peame vormindust rakendama.
  • Arg2 on vormindus, mida peame rakendama, ja peame määrama vorminduskoodi.

VBA tekstifunktsiooni näited Excelis

Allpool on toodud Exceli VBA tekstifunktsiooni näited.

Selle VBA Text Exceli malli saate alla laadida siit - VBA Text Exceli mall

Näide 1

Lubage mul näidata teile lihtsat TEXTi näidet VBA Excelis. Vaadake Visual Basicu allolevat koodi.

Kood:

 Alamteksti_näide1 () Dim FormattingValue stringina Dim FormattingResult Stringina FormattingValue = 0,564 FormattingResult = WorksheetFunction.Text (FormattingValue, "hh: mm: ss AM / PM") MsgBox FormattingResult End Sub 

Esiteks olen deklareerinud VBA-s kaks muutujat stringina

 Dim FormattingValue as String Dim FormattingResult String 

Esimese muutuja jaoks olen määranud vormindusnumbri, mille peame vormindama.

FormattingValue = 0,564

Nüüd olen veel ühe muutuja jaoks määranud funktsiooni TEXT.

FormattingResult = WorksheetFunction.Text (FormattingValue, "hh: mm: ss AM / PM")

Kui märkate, olen rakendanud aja vormindust, st “hh: mm: ss AM / PM”

Lõpuks olen tulemuse kuvamiseks rakendanud VBA teatekasti.

MsgBoxi vormindamise tulemus

Kui käivitan koodi TEXT, rakendatakse numbrile 0.564 ajavormingut ja kuvatakse tulemus allpool.

Niisiis, saime kellaajaks 13:32:10 .

Näide 2

Sarnaselt kuupäeva vormingu näitele oleme ka selles näites teinud mõned väiksemad muudatused. Allpool on kood.

Kood:

 Alamtekst_näide2 () Dim FormattingValue stringina Dim FormattingResult As String FormattingValue = 43585 FormattingResult = WorksheetFunction.Text (FormattingValue, "DD-MMM-YYYY") MsgBox FormattingResult End Sub 

Eelmisest koodist olen muutnud vormindamise väärtuse väärtuseks 0,565 väärtuseks 43585 ja vormindamisstiiliks “PP-KK-AAAA”.

See rakendab kuupäevana numbri 43585 vormindamist ja tulemus on järgmine.

Rakenda rakkudele vormindamine

Oleme näinud lihtsaid näiteid, nüüd vaadake, kuidas töölehtedes lahtritega töötada. Selle näite jaoks vaadake allolevaid andmeid.

Kõigi nende numbrite puhul peame rakendama ajavormingut. Selle jaoks rakendatakse allpool koodi vormindust.

Kood:

 Alamteksti_näide3 () Dim k täisarvuna k = 1 kuni 10 lahtrit (k, 2). Väärtus = WorksheetFunction.Text (lahtrid (k, 1). Väärtus, "hh: mm: ss AM / PM") Järgmine k lõpp Alam 

See kood viib läbi 10 lahtri ja rakendab vormindust nagu allpool.

Nii saame funktsiooni VBA TEXT abil rakendada rakkudele numbrivormingut.