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 mallNä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.