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

Tartalomjegyzék

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 string). 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.

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 „Makró be” legördülő menü PERSONAL.XLSB elemét. 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ása mentené a makrókat a Személyes munkafüzetbe, így mindig elérhetővé tenné a makrót, 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 egy VBA-almenettel:

Most adja meg az Result1 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 az Eredmény1 eredő értéke megjeleníthető és visszaadható egy VBA üzenetdoboz (MsgBox) segítségével 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.

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

A kódban Raj helyett Karant írunk, hogy megkapjuk a karakterkódját.

Kód:

2. karakterlánc () Dim eredmény 2 eredmény 2 = Asc ("Karan") MsgBox 2. eredmény 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 Result2 Result2 = Asc ("A") MsgBox Res22 End Sub
6. részlánc: () Dim 2. eredmény 2. eredmény = Asc ("a") MsgBox 2. eredmény vége

Ennek az alfolyamatnak az egyesével történő futtatásakor a következő karakterkódok kerülnek vissza az üzenet mezőbe (egyenként, ill. 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 karakterlánchoz: „Arun” é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ényhez 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ény paraméterként vagy argumentumként megadott karakterlánc üres / üres, akkor a függvény futási 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 valamilyen alapértelmezett függvény neve a VBA-ban. Ha így nevezik, akkor az aleljárás hibát fog mutatni.

érdekes cikkek...