VBA Asc | Kaip naudoti „Asc“ funkciją „Excel VBA“? (ASCII simbolių kodas)

„Excel VBA Asc“ funkcija

VBA funkcija Asc naudojama funkcijai grąžinti sveiko skaičiaus reikšmę, kuri žymi simbolio kodą, atitinkantį pirmąjį tiekiamos eilutės simbolį (eilutė pateikta kaip argumentas / parametras). Jis gali būti naudojamas arba pateiktas makrokode, kuris paprastai įvedamas per „Visual Basic“ redaktorių.

„Excel“ aplinka, kurioje makrokomanda veikia „Visual Basic Editor“ (VBE), kurią galima naudoti makrokodams redaguoti ir derinti. Jis laiko makrokodą ir susieja jį su „Excel“ darbaknygė.

Funkcijos „Asc“ grąžinta sveiko skaičiaus reikšmė yra atitinkamas ASCII simbolių kodas VBA. ASCII (Amerikos standartinis informacijos mainų kodas) yra 7 bitų simbolių kodavimas, kuriame iš viso apibrėžti 128 simboliai, įskaitant lotyniškas abėcėles, dešimt arabiškų skaitmenų, kai kuriuos skyrybos ženklus ir valdymo simbolius. Jame nėra diakritinių simbolių, nes kodavimui reikia mažiausiai 8 bitų vietos. Šis 8 bitų kodavimas atliekamas su ANSI (Amerikos nacionalinis standartų institutas), kuriame iš viso yra 256 simboliai. ANSI dar vadinama išplėstine ASCII.

VBA Asc funkcijos sintaksė

Bendroji ASC funkcijos sintaksė yra tokia:

ASC formulės sintaksėje yra šis argumentas:

Eilutė: Būtina, žymi teksto eilutę, kurios pirmojo simbolio simbolių kodas yra pageidaujamas ir kurį reikia grąžinti.

Jei pateiktoje eilutėje yra tik vienas simbolis, funkcija akivaizdžiai grąžina paties simbolio skaitinį simbolio kodą.

„Excel VBA Asc“ pavyzdžiai

Pažiūrėkime toliau, kaip „Asc“ galima naudoti „Excel VBA“.

Šį „VBA Asc Function Excel“ šabloną galite atsisiųsti čia - „VBA Asc Function Excel“ šablonas

1 pavyzdys

Sakykime, kad turime „Excel“ failą, kuriame yra keletas eilučių, ir šiomis eilutėmis norime naudoti funkciją „Asc“. Pažiūrėkime į eilutes, esančias faile:

Naudojame „Asc“ funkciją VBA makrokomandoje, kurią galima parašyti „Visual Basic“ redaktoriuje ir kurią galima pasiekti taip:

Eikite į „Developer“ ir spustelėkite „Makros“:

Dabar sukurkite makrokomandos pavadinimą: Dalyje „Makrokomandos pavadinimas“ parašykite norimos sukurti makrokomandos pavadinimą ir išskleidžiamajame meniu „Makrokomandos“ pasirinkite PERSONAL.XLSB. Makrokomandas galima laikyti asmeninėje darbaknygėje, kuri yra paslėpta darbaknygė, kuri atidaroma fone, kai tik paleidžiama „Excel“. Pasirinkus PERSONAL.XLSB, makrokomandos bus išsaugotos asmeninėje darbaknygėje, todėl makrokomanda bus visada prieinama, nes asmeninė darbaknygė nėra skirta sistemai / failui.

Spustelėkite „Sukurti“.

Tai atidarys langą su VBA antrine procedūra „Visual Basic“ redaktoriuje taip:

Dabar apibrėžkite kintamąjį Rezultatas

Kodas:

Subkodas () Dim Rezultatas1 Pabaiga Sub

Dabar priskirkite kintamąjį Rezultatas1 su formule, kad grąžintumėte eilutės simbolių kodą:

Kodas:

Subkodas () Dim Rezultatas1 Rezultatas1 = Asc ("Raj") Pabaigos sub

Dabar gautą rezultato1 reikšmę galima rodyti ir grąžinti naudojant VBA pranešimų laukelį (MsgBox) taip:

Kodas:

Subkodas () Dim Result1 Result1 = Asc ("Raj") MsgBox Res11 End Sub

Dabar, kai paleidžiame šį kodą rankiniu būdu, spustelėdami „Vykdyti“ lango viršuje arba paspausdami F5, mes gauname pirmosios eilutės raidės simbolio kodą: „Raj“, kuris rodomas pranešimų laukelyje taip:

Taigi, aukščiau pateiktoje ekrano kopijoje matome, kad paleidus makrokomandą pranešimo laukelyje grąžinama „82“. Tai reiškia, kad simbolio kodas „R“ yra 82.

Pasakykime aukščiau pateiktame pavyzdyje, kad norime rasti simbolių kodą eilutei: „Karan“. Norėdami tai padaryti, atliekame tuos pačius veiksmus, kaip nurodyta aukščiau.

Vietoj Rajo parašysime „Karan“, kad gautume jo simbolių kodą.

Kodas:

 Antroji eilutė2 () Dim Result2 Result2 = Asc ("Karan") MsgBox Res22 End Sub 

Dabar mes paleidžiame šį kodą rankiniu būdu arba paspausdami F5 ir gauname pirmosios eilutės raidės simbolio kodą: „Karan“, kuris rodomas pranešimų laukelyje taip:

Taigi, aukščiau pateiktoje ekrano kopijoje galime pamatyti, kad paleidus makrokomandą pranešimo laukelyje grąžinama „75“. Tai reiškia, kad simbolio kodas „K“ yra 75.

Dabar pažiūrėkime, kaip pasikeičia likusių eilučių rezultatas:

Kodas:

 3 eilutės eilutė () Dim Rezultatas2 Rezultatas2 = Asc ("Heena") MsgBox Rezultatas2 Pabaiga Sub 

 4 eilutė () Dim rezultatas2 rezultatas2 rezultatas = Asc ("Arun") MsgBox rezultatas2 pabaigos dalis 

 5 eilutė () Dimensija 2 rezultatas 2 rezultatas = Asc („A“) „MsgBox“ 2 rezultatas Pabaiga 

 6 eilutės eilutė () Dim Result2 Result2 = Asc ("a") MsgBox Result2 End Sub 

Vykdant šias subprocedūras po vieną, šie simbolių kodai grąžinami pranešimo laukelyje (atitinkamai po vieną). Tai yra atitinkamų anksčiau nurodytų eilučių grąžintų verčių sąrašas.

Taigi, kaip parodyta aukščiau pateiktoje ekrano kopijoje, matome, kad funkcija ASC eilutės: „Arun“ ir eilutės: „A“ simbolio kodą grąžina kaip 65. Taip yra todėl, kad grąžintas simbolių kodas yra VBA ASCII arba lygiavertis pirmosios eilutės raidės simbolių kodas, jei eilutė yra daugiau nei vienas simbolis. Taigi, už abu yra pradinis arba pirmasis eilutės simbolis, grąžinama 65: „Arun“ taip pat yra „A“.

2 pavyzdys

Jei eilutė, pateikta kaip parametras / argumentas VBA ASC funkcijai, yra tuščia / tuščia eilutė (arba eilutė be simbolių), tada funkcija pateikia vykdymo laiko klaidą.

Sekantis kodas paaiškina tą patį.

 Antroji tuščia () Neįtraukto rezultato rezultatas = Asc ("") MsgBox (rezultatas) Pabaiga Sub 

Paleidus šį kodą, vykdymo laiko klaidą gauname taip.

Taigi, aukščiau pateiktame ekrano kopijoje galime pamatyti, kad kai eilutė, pateikta kaip parametras ar argumentas ASC funkcijai, yra tuščia / tuščia, tada funkcija pateikia vykdymo laiko klaidą.

Ką reikia atsiminti

  • Eilutė, teikiama VBA ASC funkcijai, gali būti bet kokia galiojanti eilutės išraiška.
  • Asc funkcija skiriama didžiosioms ir mažosioms raidėms.
  • Funkcijos Asc grąžinta sveiko skaičiaus reikšmė yra 0–255.
  • AZ VC ASCII kodai yra 65–90, o az - 97–122.
  • Makrokomandai ar paprogramei suteiktas vardas negali būti kai kurių numatytųjų VBA funkcijų pavadinimas. Jei taip bus pavadinta, antrinė procedūra parodys klaidą.

$config[zx-auto] not found$config[zx-overlay] not found