VBA Asc | Kuinka käyttää Asc-toimintoa Excel VBA: ssa? (ASCII-merkkikoodi)

Excel VBA Asc -toiminto

VBA: n Asc-funktiota käytetään palauttamaan funktiolle kokonaislukuarvo, joka edustaa toimitetun merkkijonon ensimmäistä merkkiä vastaavaa merkkikoodia (merkkijono tarjotaan argumenttina / parametrina). Sitä voidaan käyttää tai antaa makrokoodina, joka syötetään yleensä Visual Basic Editorin kautta.

Excel-ympäristö, jossa makro toimii Visual Basic Editorissa (VBE), jota voidaan käyttää makrokoodien muokkaamiseen ja virheenkorjaukseen. Se pitää makrokoodin ja linkittää sen Excel-työkirjaan.

Asc-funktion palauttama kokonaisluku on vastaava ASCII-merkkikoodi VBA: ssa. ASCII (American Standard Code for Information Interchange) on 7-bittinen merkkikoodaus, jossa on määritelty yhteensä 128 merkkiä, mukaan lukien latinalaiset aakkoset, kymmenen arabialaista numeroa, jotkut välimerkit ja ohjausmerkit. Se ei sisällä diakriittisiä merkkejä, koska koodaamiseen tarvitaan vähintään 8-bittinen tila. Tämä 8-bittinen koodaus tehdään ANSI: lla (American National Standards Institute), jolla on yhteensä 256 merkkiä. ANSI: ta kutsutaan myös laajennetuksi ASCII: ksi.

VBA Asc -toiminnon syntaksi

ASC-toiminnon yleinen syntakse on seuraava:

ASC-kaavan syntaksissa on seuraava argumentti:

Merkkijono: Pakollinen, edustaa tekstimerkkijonoa, jonka ensimmäisen merkin vastaava merkkikoodi halutaan ja joka on palautettava.

Jos toimitetussa merkkijonossa on vain yksi merkki, funktio palauttaa ilmeisesti itse kyseisen merkin numeerisen merkkikoodin.

Esimerkkejä Excel VBA Asc: stä

Katsotaanpa alla, kuinka Asc: tä voidaan käyttää Excel VBA: ssa.

Voit ladata tämän VBA Asc Function Excel -mallin täältä - VBA Asc Function Excel -malli

Esimerkki 1

Sanotaan, että meillä on Excel-tiedosto, joka sisältää joitain merkkijonoja, ja haluamme käyttää Asc-funktiota näiden merkkijonojen kanssa. Katsotaanpa tiedostossa olevat merkkijonot:

Käytämme Asc-toimintoa VBA: ssa makrossa, joka voidaan kirjoittaa Visual Basic Editoriin ja johon pääsee seuraavasti:

Siirry Kehittäjään ja napsauta sitten Makrot:

Luo nyt makron nimi: Kirjoita makron nimi -kohtaan makron nimi, joka on luotava, ja valitse PERSONAL.XLSB avattavasta Makrot-valikosta. Makrot voidaan tallentaa henkilökohtaiseen työkirjaan, joka on piilotettu työkirja, joka avautuu taustalla aina, kun Excel käynnistetään. Jos valitset PERSONAL.XLSB, makrot tallennetaan henkilökohtaiseen työkirjaan, jolloin makro on aina käytettävissä, koska henkilökohtainen työkirja ei ole järjestelmä- tai tiedostokohtainen.

Napsauta Luo.

Tämä avaisi ikkunan, jossa Visual Basic Editorissa on VBA-alimenettely seuraavasti:

Määritä nyt muuttuja Tulos

Koodi:

Alakoodi () Himmennä tulos1 loppu

Määritä nyt muuttujalle Tulos1 kaavan avulla palauttamaan merkkijonon merkkikoodi:

Koodi:

Alikoodi () Himmennä tulos1 Tulos1 = Asc ("Raj") Loppu alakohta

Tulos1: n tulos voidaan nyt näyttää ja palauttaa VBA-viestiruudun (MsgBox) avulla seuraavasti:

Koodi:

Alikoodi () Himmennä tulos1 Tulos1 = Asc ("Raj") MsgBox-tulos1 Loppu ala

Kun suoritamme tämän koodin manuaalisesti napsauttamalla 'Suorita' ikkunan yläosassa tai painamalla F5, saamme merkkijonon ensimmäisen kirjaimen merkkikoodin: "Raj" näytetään viestiruudussa seuraavasti:

Joten voimme nähdä yllä olevasta kuvakaappauksesta, että makron suorittamisen yhteydessä '82' palautetaan viestiruutuun. Tämä tarkoittaa, että merkin koodi R on 82.

Sanotaan nyt, että yllä olevassa esimerkissä haluamme löytää merkkijonon merkkikoodin: “Karan”. Tätä varten noudatamme samoja vaiheita kuin edellä.

Raj-koodiin kirjoitetaan Karan sen merkkikoodin saamiseksi.

Koodi:

 Alamerkkijono2 () Himmennä tulos2 Tulos2 = Asc ("Karan") MsgBox-tulos2 Loppu 

Suoritamme tämän koodin manuaalisesti tai painamalla F5, ja saamme merkkijonon ensimmäisen kirjaimen merkkikoodin: “Karan” näytetään viestiruudussa seuraavasti:

Joten voimme nähdä yllä olevasta kuvakaappauksesta, että makron suorittamisen yhteydessä '75' palautetaan viestiruutuun. Tämä tarkoittaa, että merkin koodi 'K' on 75.

Katsotaan nyt, kuinka tulos muuttuu jäljellä oleville merkkijonoille:

Koodi:

 Alamerkkijono3 () Himmennä tulos2 Tulos2 = Asc ("Heena") MsgBox-tulos2 Loppuosa 

 Alamerkkijono4 () Himmennä tulos2 Tulos2 = Asc ("Arun") MsgBox-tulos2 Loppu 

 Alimerkkijono5 () Himmennä tulos2 Tulos2 = Asc ("A") MsgBox-tulos2 Loppuosa 

 Alimerkkijono6 () Himmennä tulos2 Tulos2 = Asc ("a") MsgBox-tulos2 Loppu 

Suoritettaessa tätä alimenetelmää yksitellen seuraavat merkkikoodit palautetaan viestiruutuun (yksi kerrallaan). Tämä on luettelo vastaavista arvoista, jotka on palautettu yllä oleville merkkijonoille.

Joten, kuten yllä oleva kuvakaappaus havainnollistaa, voimme nähdä, että ASC-funktio palauttaa merkkikoodin 65 merkkijonolle: "Arun" ja myös merkkijonolle: "A". Tämä johtuu siitä, että palautettu merkkikoodi on VBA ASCII tai vastaava merkkikoodi merkkijonon ensimmäiselle kirjaimelle, jos merkkijonoa on enemmän kuin yksi merkki. Siksi 65 palautetaan molemmille merkkijonon alku- tai ensimmäiseksi merkiksi: "Arun" on myös "A".

Esimerkki 2

Jos VBA ASC -funktiolle parametrina / argumenttina toimitettu merkkijono on tyhjä / tyhjä merkkijono (tai merkkijono, jossa ei ole merkkejä), toiminto palauttaa ajonaikaisen virheen.

Seuraava koodi selittää saman.

 Ala tyhjä () Himmennetyn tuloksen tulos = Asc ("") MsgBox (tulos) Loppu alakohta 

Kun suoritamme tämän koodin, saamme ajonaikaisen virheen seuraavasti.

Joten voimme nähdä yllä olevasta kuvakaappauksesta, että kun parametrina tai argumenttina toimitettu merkkijono ASC-funktiolle on tyhjä / tyhjä, toiminto palauttaa ajonaikaisen virheen.

Muistettavaa

  • VBA ASC -toiminnolle toimitettu merkkijono voi olla mikä tahansa kelvollinen merkkijonolauseke.
  • Asc-toiminto erottaa kirjainkoon.
  • Asc-funktion palauttama kokonaisluku on välillä 0-255.
  • ASBA-koodit VBA: ssa AZ: lle ovat 65-90 ja az: t ovat 97-122.
  • Makrolle tai alimenettelylle annettu nimi ei voi olla jonkin VBA: n oletustoiminnon nimi. Jos nimetään niin, alimenettely näyttää virheen.

$config[zx-auto] not found$config[zx-overlay] not found