VBA VAL - Kuidas kasutada funktsiooni VBA VAL? (koos näidetega)

Lang L: none (table-of-contents)

Exceli VBA Val funktsioon

Val funktsioon vba kuulub stringi funktsioonide alla, see on ka VBA sisseehitatud funktsioon, mida kasutatakse arvväärtuste saamiseks andmemuutujast. Oletame, et kui muutuja väärtus on A10, siis val funktsioon annab meile väljundiks 10 võtab argumendina stringi ja tagastab stringis olevad numbrid.

VAL tähistab VBA terminoloogias VALUE. See funktsioon teisendab numbreid sisaldava stringi tegelikuks numbriks. Näiteks kui sisestate tekstistringi „1234 Global“, tagastab see ainult arvulise osa, st 1234.

Sageli salvestatakse veebinumbritelt andmete allalaadimisel või hankimisel arvutustabelisse tavaliselt tekstiväärtused. Teksti teisendamine numbriteks on kõige raskem ülesanne, kui te pole Exceli õigest funktsioonist teadlik. Tavalise töölehe funktsioonina on meil funktsioon nimega VALUE, mis teisendab kogu numbreid tähistava stringi töölehe lihtsa funktsiooniga täpseteks numbriteks. Selles artiklis me näitame, kuidas seda saab VBA abil saavutada VAL-funktsiooni abil.

Süntaks

Sellel on ainult üks argument, st String.

  • String: See on lihtsalt stringi väärtus, mille abil püüame sellest arvulise osa välja tuua.

Niisiis, funktsioon VAL teisendab tarnitud stringi numbriliseks väärtuseks.

Märkus. Funktsioon VAL ignoreerib alati tühikutähti ja jätkab tühimärgi või -tähtede järgsete numbrite lugemist.

Näiteks kui komplektis on string „145 45 666 3”, ignoreerib see tühikutähti ja tagastab tulemuse kui „145456663”.

VAL-i funktsiooni näited Exceli VBA-s

Näide 1

Proovime esimest näidet lihtsa numbriga, st “14 56 47.”

Allolev kood on teie jaoks.

Kood:

Alam_näide1 () Dim k Variant k = Val ("14 56 47") 'Teisendage ülaltoodud väärtus 145647 MsgBox k End Sub

Kui käivitate VBA-koodi kasutades klahvi F5 või käsitsi, tagastab see tulemuse kui “145647”, ignoreerides kõiki tühikutähti, nagu on näidatud alloleval pildil.

Näide 2

Selles näites näeme, milline on stringi tulemus “+456”.

Kood:

Sub Val_Näide2 () Dim k Variantina k = Val ("+ 456") 'Teisenda ülaltoodud väärtus 456 MsgBox k End Sub

Selle koodi saate käitada käsitsi või klahvi F5 abil, et väärtus 456 tagastada, ignoreerides +456.

Näide # 3

Proovime nüüd proovida sama numbrit negatiivse märgiga.

Kood:

Alam Val_Näide3 () Dim k Variantina k = Val ("- 456") 'Teisenda ülaltoodud väärtus -456 MsgBox k End Sub

See kood tagastab väärtuse -456 ainult seetõttu, et peaks olema näidatud operaatori märgiga number.

Näide 4

Proovige nüüd proovida seda stringi “100 Kg”.

Kood:

Alam_näide4 () Dim k Variantina k = Val ("100 KG") 'ignoreerib KG-d ja tagastab ainult 100 MsgBox k End Sub

Kui käivitate selle koodi käsitsi või kasutades klahvi F5, ignoreerib see ülaltoodud kood “KG” ja tagastab VBA teatekasti ainult “100”.

Näide 5

Nüüd proovige kuupäeva stringi, st “14-05-2018”.

Kood:

Alam_näide5 () Dim k Variant k = Val ("14-05-2019") 'Tagastab tulemuseks 14. MsgBox k End Sub

Ülaltoodud kood tagastab tulemuseks 14, kuna funktsioon VAL saab arvväärtuse tuua ainult seni, kuni leiab muu kui numbrimärgi.

Näide # 6

Nüüd proovige stringi “7459Good456”.

Kood:

Alam_näide6 () Dim k Variant k = Val ("7459 Hea 456") 'Tagastab tulemuseks 7459. MsgBox k End Sub

See eraldab numbrid, kuni leiab mittemärgilise tähemärgi, st tulemus on 7459. Isegi kui pärast mittearvulist väärtust „Hea” on arvväärtusi, ignoreeritakse pärast seda numbreid täielikult.

Näide # 7

Nüüd proovige stringi väärtust “H 12456”.

Kood:

Alam_näide7 () Dim k Variant k = Val ("H 12456") 'Tagastab tulemuseks 0. MsgBox k End Sub

Käivitage ülaltoodud kood otseteeklahviga F5 või käsitsi, siis tagastab tulemuse nulliks. Kuna meie tarnitud stringi esimene märk on mitte numbriline märk, on tulemus null.

Näide # 8

Proovige nüüd seda stringi “24545. 2 ”.

Kood:

Alamval_näide8 () Dim k Variant k = Val ("24545. 2") 'Tagastab tulemuseks 24545,2. MsgBox k End Sub

Kood tagastab tulemuseks 24545,2, kuna funktsioon VBA VAL peab kümnendmärgiks tähemärki punkti (.) Ja tagastab tulemuse vastavalt.

Huvitavad Artiklid...