VBA Asc - Kuidas Exceli VBA-s funktsiooni Asc kasutada? (ASCII märgikood)

Lang L: none (table-of-contents)

Exceli VBA asc-funktsioon

Funktsiooni Asc VBA-s kasutatakse funktsiooni täisarvu väärtuse tagastamiseks, mis tähistab sisestatud stringi (string, mis on esitatud argumendina / parameetrina) esimest märki. Seda saab kasutada või anda makrokoodina, mis sisestatakse tavaliselt Visual Basic Editori kaudu.

Exceli keskkond, milles makro töötab Visual Basic Editoris (VBE), mida saab kasutada makrokoodide redigeerimiseks ja silumiseks. See hoiab makrokoodi ja seob selle Exceli töövihikuga.

Funktsiooni Asc tagastatud täisarv on VBA vastav ASCII tähemärgikood. ASCII (American Standard Code for Information Interchange) on 7-bitine tähemärkide kodeering, milles on määratletud kokku 128 tähemärki, sealhulgas ladina tähestikud, kümme araabia numbrit, mõned kirjavahemärgid ja kontrollmärgid. See ei sisalda diakriitilisi märke, kuna need vajavad kodeerimiseks minimaalselt 8-bitist ruumi. See 8-bitine kodeerimine toimub ANSI-ga (Ameerika Riiklik Standardiinstituut), millel on kokku määratletud 256 tähemärki. ANSI-d nimetatakse ka laiendatud ASCII-ks.

VBA Asc-funktsiooni süntaks

ASC funktsiooni üldine süntaks on järgmine:

ASC-valemi süntaksil on järgmine argument:

String: kohustuslik, tähistab tekstistringi, mille esimese tähemärgi vastavat märgikoodi soovitakse ja mis tuleb tagastada.

Kui tarnitaval stringil on ainult üks märk, tagastab funktsioon ilmselgelt selle märgi enda jaoks numbrilise märgikoodi.

Näited Exceli VBA Asc-st

Vaatame allpool, kuidas saab Asc-d Exceli VBA-s kasutada.

Näide 1

Oletame, et meil on Exceli fail, mis sisaldab mõnda stringi, ja soovime nende stringidega kasutada funktsiooni Asc. Vaatame failis olevaid stringe:

Kasutame funktsiooni Asc VBA-s makros, mille saab kirjutada Visual Basic Editori ja millele pääseb juurde järgmiselt:

Avage arendaja ja klõpsake siis makrod:

Looge nüüd makro nimi: Kirjutage jaotise „Makro nimi” alla loodava makro nimi ja valige rippmenüüst „Makrod sisse” PERSONAL.XLSB. Makrod saab salvestada isiklikusse töövihikusse, mis on varjatud töövihik, mis avaneb taustal alati, kui Exceli käivitatakse. PERSONAL.XLSB valimine salvestaks makrod isiklikusse töövihikusse, muutes makro seega alati kättesaadavaks, kuna isiklik töövihik ei ole süsteemi- ega failispetsiifiline.

Klõpsake nuppu Loo.

See avaks Visual Basic Editoris VBA alamprotseduuriga akna järgmiselt:

Nüüd määrake muutuja Result1

Kood:

Alamkood () Dim Result1 End Sub

Nüüd määrake muutuja Result1 valemiga stringi märgikoodi tagastamiseks:

Kood:

Alamkood () Dim Result1 Result1 = Asc ("Raj") End Sub

Nüüd saab tulemuse1 tulemuse kuvada ja tagastada VBA teatekasti (MsgBox) abil järgmiselt:

Kood:

Alamkood () Dim Result1 Result1 = Asc ("Raj") MsgBox Result1 End Sub

Kui käivitame selle koodi käsitsi, klõpsates akna ülaosas nupul „Käivita” või vajutades klahvi F5, saame stringi esimese tähe tähekoodi: „Raj” kuvatakse sõnumikastis järgmiselt:

Niisiis näeme ülaltoodud ekraanipildil, et makro käivitamisel tagastatakse sõnumikasti '82'. See tähendab, et tähe „R” tähemärgikood on 82.

Ütleme ülaltoodud näites, et soovime leida stringi märgikoodi: “Karan”. Selleks järgime samu samme nagu eespool.

Koodis kirjutame Raji asemel Karan, et saada selle märgikood.

Kood:

Alamstring2 () Dim Result2 Result2 = Asc ("Karan") MsgBox Result2 End Sub

Nüüd käivitame selle koodi käsitsi või vajutades klahvi F5 ja saame stringi esimese tähe märgikoodi: “Karan” kuvatakse sõnumikastis järgmiselt:

Niisiis näeme ülaltoodud ekraanipildil, et makro käivitamisel tagastatakse sõnumikasti '75'. See tähendab, et tähe „K” tähemärk on 75.

Vaatame nüüd, kuidas ülejäänud stringide tulemus muutub:

Kood:

Alamstring 3 () Dim Result2 Result2 = Asc ("Heena") MsgBox Result2 End Sub
Alamstring4 () Hämar tulemus 2 Tulemus2 = Asc ("Arun") MsgBoxi tulemus 2 Lõpp alam
Alamstring 5 () Dim Result2 Result2 = Asc ("A") MsgBox Result2 End Sub
Alamstring 6 () Dim Result2 Result2 = Asc ("a") MsgBox Result2 End Sub

Selle alamprotseduuri ükshaaval käivitamisel tagastatakse sõnumikasti järgmised märgikoodid (vastavalt ükshaaval). See on ülaltoodud stringide jaoks tagastatud vastavate väärtuste loend.

Nii nagu ülaltoodud ekraanipilt illustreerib, näeme, et funktsioon ASC tagastab stringi: "Arun" ja ka stringi: "A." tähemärgikoodi väärtusega 65. Selle põhjuseks on asjaolu, et tagastatud märgikood on stringi esimese tähe VBA ASCII või samaväärne märgikood juhul, kui stringi on rohkem kui üks märk. Seega tagastatakse 65 stringi mõlema alg- või esimese tähemärgi korral: “Arun” on ka “A.”

Näide 2

Kui funktsiooni VBA ASC parameetri / argumendina edastatud string on tühi / tühi string (või string, kus pole tähemärki), tagastab funktsioon käitusaja tõrke.

Järgmine kood selgitab sama.

Alamtühi () Hämara tulemuse tulemus = Asc ("") MsgBox (tulemus) Lõpp alam

Selle koodi käivitamisel kuvatakse Run-time tõrge järgmiselt.

Niisiis näeme ülaltoodud ekraanipildil, et kui ASC-funktsioonile parameetri või argumendina edastatud string on tühi / tühi ja funktsioon tagastab käitamisvea.

Asjad, mida meeles pidada

  • Funktsioonile VBA ASC tarnitud string võib olla mis tahes kehtiv stringi avaldis.
  • Funktsioon Asc on tõstutundlik.
  • Funktsiooni Asc tagastatud täisarv on vahemikus 0–255.
  • AS-i ASCII koodid VBA-s on 65–90 ja az-de puhul 97–122.
  • Makrole või alamprotseduurile antud nimi ei saa olla VBA mõne vaikefunktsiooni nimi. Kui seda nimetatakse, näitab alamprotseduur viga.

Huvitavad Artiklid...