VBA Asc | Az Asc függvény használata az Excel VBA-ban? (ASCII karakterkód)

Excel VBA Asc funkció

A VBA Asc függvényével egész értéket adhatunk vissza, amely a szállított karakterlánc első karakterének megfelelő karakterkódot képviseli (argumentumként / paraméterként megadott karakterlánc). Használható vagy megadható olyan makrókódban, amelyet általában a Visual Basic Editoron keresztül adnak meg.

Az az Excel-környezet, amelyben a makró a Visual Basic Editorban (VBE) fut, és amely felhasználható a makrókódok szerkesztésére és hibakeresésére. Tartja a makrokódot, és összekapcsolja az Excel munkafüzettel.

Az Asc függvény által visszaadott egész érték a megfelelő ASCII karakterkód a VBA-ban. Az ASCII (American Standard Code for Information Interchange) egy 7 bites karakterkódolás, amelyben összesen 128 karakter van meghatározva, beleértve a latin ábécét, tíz arab számot, néhány írásjelet és vezérlő karaktereket. Nem tartalmaz diakritikus karaktereket, mivel a kódoláshoz legalább 8 bites területre van szükség. Ez a 8 bites kódolás az ANSI-val (American National Standards Institute) történik, amely összesen 256 karaktert tartalmaz. Az ANSI-t kiterjesztett ASCII-nek is nevezik.

A VBA Asc funkció szintaxisa

Az ASC funkció általános szintaxisa a következő:

Az ASC képlet szintaxisa a következő argumentummal rendelkezik:

Karakterlánc: Kötelező, azt a szöveges karakterláncot jelöli, amelynek első karakterének megfelelő karakterkódját kívánja megadni és visszaadni.

Ha a megadott karaktersorozatnak csak egy karaktere van, akkor a függvény nyilvánvalóan maga a karakter numerikus karakterkódját adja vissza.

Példák az Excel VBA Asc-re

Nézzük meg alább, hogyan használható az Asc az Excel VBA-ban.

Itt letöltheti ezt a VBA Asc Function Excel sablont - VBA Asc Function Excel sablont

1. példa

Tegyük fel, hogy van egy Excel-fájlunk, amely tartalmaz néhány karakterláncot, és az Asc függvényt szeretnénk használni ezekkel a karakterláncokkal. Lássuk a fájlban található karakterláncokat:

Az Asc függvényt a VBA-ban használjuk egy makróban, amely a Visual Basic Editorba írható és az alábbiak szerint érhető el:

Nyissa meg a Fejlesztőt, majd kattintson a Makrók elemre:

Most hozzon létre egy makrónevet: A „Makró neve” alatt írja be a létrehozni kívánt makró nevét, és válassza a „SZEMÉLYES.XLSB” lehetőséget a „Makrók be” legördülő menüből. A makrók egy személyes munkafüzetben tárolhatók, amely egy rejtett munkafüzet, amely az Excel indításakor a háttérben megnyílik. A PERSONAL.XLSB kiválasztásával a makrók mentésre kerülnek a Személyes munkafüzetbe, így a makró mindig elérhetővé válik, mivel a Személyes munkafüzet nem rendszer- vagy fájlspecifikus.

Kattintson a "Létrehozás" gombra.

Ez egy ablakot nyitna meg a Visual Basic Editorban található VBA aleljárással az alábbiak szerint:

Most adja meg az Eredmény változót

Kód:

Alkód () Dim Result1 End Sub

Most rendelje hozzá a Result1 változót a képlettel a karakterlánc karakterkódjának visszaadásához:

Kód:

Alkód () Dim Result1 Result1 = Asc ("Raj") End Sub

Most a Result1 eredményértéke megjeleníthető és visszaadható egy VBA üzenetdoboz (MsgBox) használatával az alábbiak szerint:

Kód:

Alkód () Dim Result1 Result1 = Asc ("Raj") MsgBox Res11 End Sub

Most, amikor ezt a kódot manuálisan futtatjuk az ablak tetején található „Futtatás” gombra kattintva vagy az F5 megnyomásával, megkapjuk a karaktersorozat első betűjének karakterkódját: „Raj” megjelenik az Üzenetdobozban az alábbiak szerint:

Tehát a fenti képernyőképen láthatjuk, hogy a makró futtatásakor a '82' egy üzenetmezőben jelenik meg. Ez azt jelenti, hogy az „R” karakterkódja 82.

Mondjuk a fenti példában, hogy meg akarjuk találni a karakterlánc karakterkódját: „Karan”. Ehhez ugyanazokat a lépéseket követjük, mint fent.

A kódba Raj helyett Karan-t írunk, hogy megkapjuk a karakterkódját.

Kód:

 2. karakterlánc () Dim eredmény 2 eredmény 2 = Asc ("Karan") MsgBox eredmény 2 vége 

Most ezt a kódot futtatjuk manuálisan vagy az F5 megnyomásával, és megkapjuk a karakterlánc első betűjének karakterkódját: „Karan” az Üzenetmezőben a következőképpen jelenik meg:

Tehát a fenti képernyőképen láthatjuk, hogy a makró futtatásakor a '75' egy üzenetmezőben jelenik meg. Ez azt jelenti, hogy a „K” karakterkódja 75.

Most nézzük meg, hogyan változik az eredmény a fennmaradó karakterláncoknál:

Kód:

 3. részlánc: () Dim Result2 Result2 = Asc ("Heena") MsgBox Res22 End Sub 

 4. részlánc: () Dim 2. eredmény 2. eredmény = Asc ("Arun") MsgBox 2. eredmény vége 

 5. karakterlánc () Dim 2. eredmény 2. eredmény = Asc ("A") MsgBox 2. eredmény vége 

 6. karakterlánc () Dim Result2 Result2 = Asc ("a") MsgBox Res22 End Sub 

Ennek az alfolyamatnak egyesével történő futtatásakor a következő karakterkódok kerülnek vissza az üzenetmezőbe (egyenként). Ez a fenti karakterláncokhoz adott megfelelő értékek listája.

Tehát, amint azt a fenti képernyőkép szemlélteti, láthatjuk, hogy az ASC függvény 65 karakterként adja vissza a karakterkódot a „Arun” karakterlánchoz, és a „A” karakterlánchoz is. Ez azért van, mert a visszaküldött karakterkód a VBA ASCII vagy azzal egyenértékű karakterkód a karakterlánc első betűjéhez, abban az esetben, ha a karakterlánc több karakterből áll. Ezért 65-et adunk vissza a karakterlánc kezdő vagy első karaktereként: az „Arun” szintén „A”.

2. példa

Ha a VBA ASC függvénynek paraméterként / argumentumként megadott karakterlánc üres / üres karakterlánc (vagy karakter nélküli karakterlánc), akkor a függvény futási hibát ad vissza.

A következő kód ugyanezt magyarázza.

 Sub blank () Dim eredmény eredménye = Asc ("") MsgBox (eredmény) End Sub 

Amikor futtatjuk ezt a kódot, az alábbiak szerint kapjuk meg a Futásidejű hibát.

Tehát a fenti képernyőképen láthatjuk, hogy amikor az ASC függvényhez paraméterként vagy argumentumként megadott karakterlánc üres / üres, akkor a függvény futási idejű hibát ad vissza.

Dolgok, amikre emlékezni kell

  • A VBA ASC függvényhez szállított karakterlánc bármilyen érvényes karakterlánc lehet.
  • Az Asc funkció megkülönbözteti a kis- és nagybetűket.
  • Az Asc függvény által visszaadott egész érték 0 és 255 között van.
  • Az AZ VC-jében az ASCII kódok 65-90, az az esetében 97-122.
  • A makrónak vagy aleljárásnak adott név nem lehet a VBA valamelyik alapértelmezett függvényének neve. Ha így nevezik, akkor az aleljárás hibát fog mutatni.