VBA Asc | Kako se koristi Asc funkcija u programu Excel VBA? (ASCII kod znakova)

Funkcija Excel VBA Asc

Funkcija Asc u VBA koristi se za vraćanje cijele vrijednosti koja predstavlja kôd znaka koji odgovara prvom znaku isporučenog niza (niz naveden kao argument / parametar) funkciji. Može se koristiti ili dati u makro kodu koji se obično unosi putem Visual Basic Editora.

Excel okruženje u kojem se makronaredba izvodi u uređivaču Visual Basic (VBE) koje se može koristiti za uređivanje i uklanjanje pogrešaka kodova makronaredbi. Sadrži makro kod i povezuje ga s Excel radnom knjigom.

Cjelobrojna vrijednost koju vraća funkcija Asc odgovarajući je ASCII kôd znaka u VBA. ASCII (američki standardni kod za razmjenu informacija) 7-bitno je kodiranje znakova koje u sebi definira ukupno 128 znakova, uključujući latinične abecede, deset arapskih brojeva, neke interpunkcijske znakove i kontrolne znakove. Ne uključuje dijakritičke znakove jer im je za kodiranje potreban najmanje 8-bitni prostor. Ovo 8-bitno kodiranje vrši se pomoću ANSI (American National Standards Institute) koji ima ukupno definiranih 256 znakova. ANSI se naziva i proširenim ASCII.

Sintaksa funkcije VBA Asc

Opća sintaksa za ASC funkciju je sljedeća:

Sintaksa formule ASC ima sljedeći argument:

Niz: Obavezno, predstavlja tekstualni niz čiji je odgovarajući kod znaka prvog znaka potreban i treba ga vratiti.

Ako dotični niz ima samo jedan znak, tada funkcija očito vraća numerički kôd samog znaka.

Primjeri Excel VBA Asc

Pogledajmo u nastavku kako se Asc može koristiti u programu Excel VBA.

Ovaj predložak VBA Asc Function Excel možete preuzeti ovdje - VBA Asc Function Excel Predložak

Primjer # 1

Recimo da imamo Excel datoteku koja sadrži neke nizove i želimo koristiti funkciju Asc s tim žicama. Pogledajmo nizove sadržane u datoteci:

Koristimo funkciju Asc u VBA u makronaredbi koja se može zapisati u Visual Basic Editor i kojoj se može pristupiti na sljedeći način:

Idite na Developer, a zatim kliknite Macros:

Sada stvorite naziv makronaredbe: Pod "Ime makronaredbe" napišite naziv makronaredbe koju želite stvoriti i na padajućem izborniku "Uključeni makronaredbe" odaberite PERSONAL.XLSB. Makronaredbe se mogu pohraniti u osobnu radnu knjigu koja je skrivena radna knjiga koja se otvara u pozadini kad god se pokrene Excel. Odabirom PERSONAL.XLSB makronaredbe će se spremiti u Osobnu radnu bilježnicu, čineći tako makronaredbu uvijek dostupnom jer Osobna radna knjiga nije specifična za sustav / datoteku.

Kliknite na 'Stvori'.

Ovo bi otvorilo prozor s VBA potprocedurom u Visual Basic Editoru na sljedeći način:

Sada definirajte varijablu Rezultat

Kodirati:

Sub kod () Dim Rezultat1 Kraj Sub

Sada dodijelite varijablu Result1 s formulom da vrati kôd znaka niza:

Kodirati:

Sub kod () Dim Rezultat1 Rezultat1 = Asc ("Raj") Kraj Sub

Sada se rezultantna vrijednost Result1 može prikazati i vratiti pomoću okvira za poruke VBA (MsgBox) kako slijedi:

Kodirati:

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

Sada kada ručno pokrenemo ovaj kod klikom na 'Pokreni' na vrhu prozora ili pritiskom na F5, dobit ćemo kôd znaka prvog slova niza: "Raj" prikazan u okviru za poruke na sljedeći način:

Dakle, na gornjoj snimci zaslona možemo vidjeti da se prilikom pokretanja makronaredbe '82' vraća u okvir za poruke. To implicira da je kod znaka za 'R' 82.

Recimo sada u gornjem primjeru da želimo pronaći kod znaka za niz: "Karan". Da bismo to učinili, slijedimo iste korake kao i gore.

U kod ćemo umjesto toga Raj napisati Karan da bismo dobili njegov kod karaktera.

Kodirati:

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

Sada ovaj kôd pokrećemo ručno ili pritiskom na F5 i dobivamo kôd znaka prvog slova niza: “Karan” prikazan u okviru za poruke na sljedeći način:

Dakle, na gornjoj snimci zaslona možemo vidjeti da se prilikom pokretanja makronaredbe '75' vraća u okvir za poruke. To podrazumijeva da je kod znaka za 'K' 75.

Sada da vidimo kako se rezultat mijenja za preostale nizove:

Kodirati:

 Podniza3 () Prigušeni rezultat2 Rezultat2 = Porast ("Heena") MsgBox Rezultat2 Završi pod 

 Sub String4 () Dim Result2 Result2 = Asc ("Arun") MsgBox Result2 End Sub 

 Podniza5 () Zatamnjeni rezultat2 Rezultat2 = Porast ("A") MsgBox Rezultat2 Kraj pod 

 Podniz 6 () Prigušeni rezultat2 Rezultat2 = Porast ("a") MsgBox Rezultat2 Kraj pod 

Prilikom izvođenja ovog potprocedura jedan po jedan, u okvir za poruke vraćaju se sljedeći kodovi znakova (jedan po jedan). Ovo je popis odgovarajućih vrijednosti vraćenih za gornje nizove.

Dakle, kao što ilustrira gornja snimka zaslona, ​​možemo vidjeti da funkcija ASC vraća kôd znaka kao 65 za niz: "Arun", a također i za niz: "A". To je zato što je vraćeni kôd znaka VBA ASCII ili ekvivalentni kôd znaka za prvo slovo niza u slučaju da je niz više od jednog znaka. Stoga se vraća 65 za oba kao početni ili prvi znak niza: "Arun" je također "A".

Primjer # 2

Ako je niz isporučen kao parametar / argument za funkciju VBA ASC prazan / prazan niz (ili niz bez znakova), tada funkcija vraća pogrešku vremena izvođenja.

Sljedeći kod objašnjava isto.

 Sub prazno () Zatamni rezultat rezultata = Asc ("") MsgBox (rezultat) Kraj Sub 

Kada pokrenemo ovaj kod, dobit ćemo pogrešku Run-time kako slijedi.

Dakle, možemo vidjeti na gornjoj snimci zaslona da kada je niz isporučen kao parametar ili argument za ASC funkciju prazan / prazan, tada funkcija vraća pogrešku u vremenu izvođenja.

Stvari koje treba zapamtiti

  • Niz isporučen funkciji VBA ASC može biti bilo koji valjani izraz niza.
  • Funkcija Asc razlikuje velika i mala slova.
  • Cjelobrojna vrijednost koju vraća funkcija Asc nalazi se u rasponu od 0-255.
  • ASCII kodovi u VBA za AZ su 65-90, a za az 97-122.
  • Ime dodano makronaredbi ili potproceduri ne može biti naziv neke zadane funkcije u VBA. Ako je tako imenovano, tada će potpostupak prikazati pogrešku.