VBA Asc | Kako uporabiti funkcijo Asc v Excelu VBA? (Koda znaka ASCII)

Funkcija Excel VBA Asc

Funkcija Asc v VBA se uporablja za vrnitev celoštevilčne vrednosti, ki predstavlja kodo znakov, ki ustreza prvemu znaku dobavljenega niza (niz, naveden kot argument / parameter). Uporablja se lahko v makri, ki jo običajno vnesete prek urejevalnika Visual Basic.

Excelovo okolje, v katerem se makro izvaja v urejevalniku Visual Basic (VBE), ki ga lahko uporabite za urejanje in odpravljanje napak kod makrov. Vsebuje kodo makra in jo poveže z Excelovim delovnim zvezkom.

Celoštevilčna vrednost, ki jo vrne funkcija Asc, je ustrezna koda znaka ASCII v VBA. ASCII (ameriška standardna koda za izmenjavo informacij) je 7-bitno kodiranje znakov, ki vsebuje skupaj 128 znakov, vključno z latiničnimi abecedami, desetimi arabskimi številkami, nekaterimi ločili in kontrolnimi znaki. Ne vključuje diakritičnih znakov, saj za kodiranje potrebujejo najmanj 8-bitni prostor. To 8-bitno kodiranje se izvede z ANSI (American National Standards Institute), ki ima skupno opredeljenih 256 znakov. ANSI se imenuje tudi razširjeni ASCII.

Sintaksa funkcije VBA Asc

Splošna sintaksa za funkcijo ASC je naslednja:

Sintaksa formule ASC ima naslednji argument:

Niz: obvezno, predstavlja besedilni niz, katerega prva koda ustreza ustrezni kodi znakov in jo je treba vrniti.

Če ima priloženi niz samo en znak, potem funkcija očitno vrne številčno kodo samega znaka.

Primeri Excel VBA Asc

Spodaj si oglejmo, kako se Asc lahko uporablja v Excelu VBA.

To predlogo VBA Asc Function Excel lahko prenesete tukaj - Predloga VBA Asc Function Excel

Primer # 1

Recimo, da imamo datoteko Excel, ki vsebuje nekaj nizov, in želimo uporabiti funkcijo Asc s temi nizi. Oglejmo si nize, ki jih vsebuje datoteka:

Funkcijo Asc v VBA uporabljamo v makru, ki ga lahko zapišemo v urejevalnik Visual Basic in do katerega lahko dostopate na naslednji način:

Pojdite na Developer in nato kliknite Macros:

Zdaj ustvarite ime makra: V razdelku »Ime makra« napišite ime makra, ki ga želite ustvariti, in v spustnem meniju »Macros In« izberite PERSONAL.XLSB. Makre lahko shranite v osebni delovni zvezek, ki je skriti delovni zvezek, ki se odpre v ozadju, ko se zažene Excel. Če izberete PERSONAL.XLSB, bi makre shranili v osebni delovni zvezek, s čimer je makro vedno na voljo, saj osebni delovni zvezek ni specifičen za sistem / datoteko.

Kliknite »Ustvari«.

To bi odprlo okno s podproceduro VBA v urejevalniku Visual Basic, kot sledi:

Zdaj definirajte spremenljivko Rezultat

Koda:

Podkoda () Dim Rezultat1 Konec Sub

Zdaj spremenljivki Result1 s formulo dodelite vrnitev znakovne kode niza:

Koda:

Podkoda () Dim Rezultat1 Rezultat1 = Asc ("Raj") Konec Sub

Zdaj se lahko rezultatska vrednost Result1 prikaže in vrne s pomočjo sporočila VBA (MsgBox), kot sledi:

Koda:

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

Zdaj, ko to kodo zaženemo ročno s klikom na "Zaženi" na vrhu okna ali s pritiskom na F5, dobimo kodo znakov prve črke niza: "Raj", prikazano v oknu za sporočila, kot sledi:

Torej, na zgornjem posnetku zaslona lahko vidimo, da se ob zagonu makra v okence za sporočilo vrne '82'. To pomeni, da je znakovna koda za 'R' 82.

Zdaj recimo, da v zgornjem primeru želimo najti kodo znakov za niz: "Karan". Za to sledimo enakim korakom kot zgoraj.

V kodo namesto Raja bomo napisali Karan, da dobimo njegovo kodo znakov.

Koda:

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

Zdaj zaženemo to kodo ročno ali s pritiskom na F5 in dobimo kodo znakov prve črke niza: "Karan", prikazano v oknu za sporočila, kot sledi:

Torej, na zgornjem posnetku zaslona lahko vidimo, da se ob zagonu makra v okence za sporočilo vrne '75'. To pomeni, da je znakovna koda za 'K' 75.

Zdaj pa poglejmo, kako se rezultat spremeni za preostale nize:

Koda:

 Sub String3 () Dim Result2 Result2 = Asc ("Heena") MsgBox Result2 End Sub 

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

 Sub String5 () Dim Result2 Result2 = Asc ("A") MsgBox Result2 End Sub 

 Sub String6 () Dim Result2 Result2 = Asc ("a") MsgBox Result2 End Sub 

Pri zagonu tega podprocedura enega za drugim se v polje za sporočilo vrnejo naslednje znakovne kode (ena po ena). To je seznam ustreznih vrednosti, vrnjenih za zgornje nize.

Kot je prikazano na zgornjem posnetku zaslona, ​​lahko vidimo, da funkcija ASC vrne kodo znakov kot 65 za niz: "Arun" in tudi za niz: "A". To je zato, ker je vrnjena koda znaka VBA ASCII ali enakovredna koda znaka za prvo črko niza, če je niz več kot en znak. Zato se vrne 65 za oba kot začetni ali prvi znak niza: "Arun" je tudi "A".

2. primer

Če je niz, dobavljen kot parameter / argument za funkcijo VBA ASC, prazen / prazen niz (ali niz brez znakov), potem funkcija vrne napako med izvajanjem.

Naslednja koda pojasnjuje isto.

 Sub blank () Dim rezultat rezultata = Asc ("") MsgBox (rezultat) End Sub 

Ko zaženemo to kodo, dobimo napako med izvajanjem, kot sledi.

Torej lahko na zgornjem posnetku zaslona vidimo, da ko je niz, ki je kot parameter ali argument funkcije ASC prazen / prazen, funkcija vrne napako med izvajanjem.

Stvari, ki si jih je treba zapomniti

  • Niz, dobavljen v funkcijo VBA ASC, je lahko kateri koli veljaven izraz niza.
  • Funkcija Asc razlikuje med velikimi in malimi črkami.
  • Celoštevilčna vrednost, ki jo vrne funkcija Asc, je v območju od 0-255.
  • Kode ASCII v VBA za AZ so 65-90, za az pa 97-122.
  • Ime makra ali podprocedure ne more biti ime neke privzete funkcije v VBA. Če je tako imenovano, bo podproces prikazal napako.