ВБА Асц - Како се користи Асц функција у програму Екцел ВБА? (АСЦИИ код карактера)

Преглед садржаја

Екцел ВБА Асц функција

Функција Асц у ВБА користи се за враћање целобројне вредности која представља код карактера који одговара првом знаку испорученог низа (низ наведен као аргумент / параметар) функцији. Може се користити или дати у макро коду који се обично уноси преко Висуал Басиц Едитор-а.

Екцел окружење у којем се макро ради у програму Висуал Басиц Едитор (ВБЕ) које се може користити за уређивање и отклањање грешака кодова макронаредби. Садржи макро код и повезује га са Екцел радном свеском.

Целобројна вредност коју враћа функција Асц је одговарајући АСЦИИ код карактера у ВБА. АСЦИИ (амерички стандардни код за размену информација) је 7-битно кодирање знакова које у себи садржи укупно 128 знакова, укључујући латиничне абецеде, десет арапских бројева, неке интерпункцијске знакове и контролне знакове. Не укључује дијакритичке знакове јер им је за кодирање потребан минимални простор од 8 бита. Ово 8-битно кодирање врши се помоћу АНСИ (Амерички национални институт за стандардизацију) који има укупно дефинисаних 256 знакова. АНСИ се назива и проширени АСЦИИ.

Синтакса функције ВБА Асц

Општа синтакса за АСЦ функцију је следећа:

Синтакса АСЦ формуле има следећи аргумент:

Низ: Обавезно, представља текстуални низ чији одговарајући код карактера одговара првом знаку и који треба вратити.

Ако достављени низ има само један знак, тада функција очигледно враћа нумерички код самог знака.

Примери Екцел ВБА Асц

Погледајмо у наставку како се Асц може користити у Екцел ВБА.

Пример # 1

Рецимо да имамо Екцел датотеку која садржи неке низове и желимо да користимо функцију Асц са овим жицама. Погледајмо низове садржане у датотеци:

Функцију Асц у ВБА користимо у макроу који се може написати у Висуал Басиц Едитор и којем се може приступити на следећи начин:

Идите на Девелопер, а затим кликните на Мацрос:

Сада креирајте име макронаредбе: Под „Име макронаредбе“ напишите име макронаредбе коју желите да направите и изаберите ПЕРСОНАЛ.КСЛСБ у падајућем менију „Мацрос Ин“. Макронаредбе се могу чувати у личној радној свесци која је скривена радна свеска која се отвара у позадини кад год се покрене Екцел. Одабиром ПЕРСОНАЛ.КСЛСБ сачували бисте макронаредбе у личној радној свесци, чинећи тако макронаредбу увек доступном, јер лична радна свеска није специфична за систем / датотеку.

Кликните на „Направи“.

Ово би отворило прозор са ВБА потпроцедуром у Висуал Басиц Едитору на следећи начин:

Сада дефинишите променљиву Резултат1

Шифра:

Суб код () Дим Резултат1 Крај Суб

Сада променљивој Ресулт1 доделите формулу за враћање знаковног кода низа:

Шифра:

Суб код () Дим Резултат1 Резултат1 = Асц ("Рај") Крај Суб

Сада се резултујућа вредност Ресулт1 може приказати и вратити помоћу оквира за поруке ВБА (МсгБок) на следећи начин:

Шифра:

Под код () Дим Ресулт1 Ресулт1 = Асц ("Рај") МсгБок Ресулт1 Енд Суб

Сада када ручно покренемо овај код кликом на „Покрени“ на врху прозора или притиском на Ф5, добијамо код знака првог слова низа: „Рај“ приказан у оквиру за поруке на следећи начин:

Дакле, на горњем снимку заслона можемо видети да се приликом покретања макронаредбе „82“ враћа у оквир за поруку. То подразумева да је код карактера за 'Р' 82.

Сада, рецимо у горњем примеру, желимо да пронађемо код карактера за низ: „Каран“. Да бисмо то урадили, следимо исте кораке као и горе.

У коду ћемо уместо Раја написати Каран да бисмо добили његов код карактера.

Шифра:

Суб Стринг2 () Дим Ресулт2 Ресулт2 = Асц ("Каран") МсгБок Ресулт2 Енд Суб

Сада овај код покрећемо ручно или притиском на Ф5 и добијамо код карактера првог слова низа: „Каран“ приказан у оквиру за поруке на следећи начин:

Дакле, на горњем снимку заслона можемо видети да се при покретању макронаредбе „75“ враћа у оквир за поруку. То подразумева да је код карактера за 'К' 75.

Сада да видимо како се резултат мења за преостале низове:

Шифра:

Суб Стринг3 () Дим Ресулт2 Ресулт2 = Асц ("Хеена") МсгБок Ресулт2 Енд Суб
Суб Стринг4 () Дим Ресулт2 Ресулт2 = Асц ("Арун") МсгБок Ресулт2 Енд Суб
Суб Стринг5 () Дим Ресулт2 Ресулт2 = Асц ("А") МсгБок Ресулт2 Енд Суб
Суб Стринг6 () Дим Ресулт2 Ресулт2 = Асц ("а") МсгБок Ресулт2 Енд Суб

Приликом покретања ове потпроцедуре један по један, следећи кодови знакова враћају се у оквир за поруке (један по један, респективно). Ово је листа одговарајућих вредности враћених за горње низове.

Дакле, као што илуструје горњи снимак екрана, можемо видети да функција АСЦ враћа код карактера као 65 за низ: „Арун“, а такође и за низ: „А.“ То је зато што је враћени код карактера ВБА АСЦИИ или еквивалентни код знака за прво слово низа у случају да је низ више од једног знака. Дакле, враћа се 65 за оба као почетни или први знак низа: „Арун“ је такође „А.“

Пример # 2

Ако је низ који се испоручује као параметар / аргумент за функцију ВБА АСЦ празан / празан низ (или низ без знакова), тада функција враћа грешку током извршавања.

Следећи код објашњава исто.

Суб празно () Затамни резултат резултата = Асц ("") МсгБок (резултат) Крај Суб

Када покренемо овај код, добијамо грешку Рун-тиме на следећи начин.

Дакле, можемо видети на горњем снимку екрана да када је низ испоручен као параметар или аргумент за функцију АСЦ празан / празан, а затим функција враћа грешку током извршавања.

Ствари које треба запамтити

  • Низ испоручен функцији ВБА АСЦ може бити било који важећи израз низа.
  • Функција Асц разликује велика и мала слова.
  • Целобројна вредност коју враћа функција Асц налази се у опсегу 0-255.
  • АСЦИИ кодови у ВБА за АЗ су 65-90, а за аз 97-122.
  • Име дато макронаредби или потпроцедури не може бити име неке задате функције у ВБА. Ако је тако именовано, тада ће потпроцедура показати грешку.

Занимљиви Чланци...