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 programu Visual Basic Editor (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.
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 odaberite PERSONAL.XLSB u padajućem izborniku "Macros In". 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 knjigu, čineći tako makronaredbu uvijek dostupnom jer Osobna radna knjiga nije specifična za sustav / datoteku.
Kliknite "Stvori".
Ovo bi otvorilo prozor s VBA potprocedurom u Visual Basic Editoru na sljedeći način:
Sada definirajte varijablu Rezultat1
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 kôd znaka za 'R' 82.
Sada, recimo u gornjem primjeru, želimo pronaći kod znaka za niz: "Karan." Da bismo to učinili, slijedimo iste korake kao i gore.
U kod ćemo umjesto Raja napisati Karan da bismo dobili njegov kôd znaka.
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 kako slijedi:
Dakle, na gornjoj snimci zaslona možemo vidjeti da se prilikom pokretanja makronaredbe '75' vraća u okvir za poruke. To implicira da je kôd 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 () Prigušeni rezultat2 Rezultat2 = Porast ("A") MsgBox Rezultat2 Završi pod
Podniz 6 () Prigušeni rezultat2 Rezultat2 = Porast ("a") MsgBox Rezultat2 Kraj pod
Prilikom izvođenja ovog potprocedura jedan po jedan, sljedeći kodovi znakova vraćaju se u okvir za poruke (jedan po jedan, respektivno). 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 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 koji se kao parametar ili argument daje funkciji ASC prazan / prazan, a zatim 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.