Екцел ВБА Свитцх цасе

У случају ВБА Свитцх, када морамо логично проверити или анализирати стање и извршити различите линије кодова засноване на истој, користимо ИФ-Елсе условну изјаву. Слично томе, постоји још један израз Свитцх Цасе који је познатији као Селецт Цасе изјава који може да провери или анализира више логичких услова и изврши кодне линије на основу њих. Када имате три или више логичких услова да проверите, препоручује се да користите опцију Селецт Цасе или Свитцх Цасе уместо конвенционалне ИФ-Елсе изјаве. Јер то чини ВБА код бржим и разумљивијим уместо угнијежђених ИФ-Елсе изјава у таквим случајевима.

Свитцх Цасе / Селецт Цасе

Свитцх Цасе или Селецт Цасе у ВБА ради на сличним линијама као у ИФ-Елсе изјавама. Провјерава више логичких / увјетних израза у односу на различите вриједности (случајеве). Чим се било који случај подудара са условом (постане истинито за одређени услов), систем извршава тај случај, а остали случајеви се игноришу да би се извршили. У случају, постоје два случаја која су тачна за дати услов, само први ће се извршити по закону приоритета.

Синтакса за преклопни случај / Изабрани случај је следећа:

Select Case
Case value_1
Code to Execute when Expression = value_1
Case value_2
Code to Execute when Expression = value_2
Case value_3
Code to Execute when Expression = value_3
.
.
.
Case value_n
Code to Execute when Expression = value_n
Case Else
Code to Execute when no case value meets the expression/logical test.
End Select

Где,

Израз: Ово је израз за који смо желели да проверимо или анализирамо користећи различите вредности случаја.

валуе_1, валуе_2, валуе_3, … су логични услови које је потребно провјерити за дати израз.

Како се користи Изјава о случају прекидача у Екцелу ВБА?

Научићемо како да користимо изјаву Свитцх Цасе у Екцелу помоћу ВБА кода.

Можете преузети овај предложак ВБА Свитцх Свитцх Екцел овде - ВБА Шаблон за Екцел преклопнике

Случај ВБА прекидача - пример бр. 1

Проверићемо да ли је наведени број мањи од 100 или већи од 100. За то следите кораке у наставку:

Корак 1: Уметните нови модул у Висуал Басиц Едитор (ВБЕ). Кликните на картицу Уметање > одаберите Модул.

Корак 2: Дефинишите нову потпроцеру у уметнутом модулу који може да држи ваш макро.

Шифра:

 Суб свитцх_цасе_екампле1 () Крај Суб 

Корак 3: Дефинишите нову променљиву под називом усрИнпт која може да садржи корисничку вредност. Искористите функцију ВБА ИнпутБок да бисте креирали оквир за унос који узима корисничке вредности путем променљиве усрИнпт .

Шифра:

 Суб свитцх_цасе_екампле1 () Дим усрИнпт Ас Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Енд Суб 

Корак 4: Употријебите изјаву Селецт Цасе и наведите вриједност коју корисник даје путем варијабле усрИнпт . Ово је израз који морамо проверити са логичким условима.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Као Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Изаберите Цасе усрИнпт Енд Суб 

Корак 5: Унесите први логички тест који ће се проверити под изјавом случаја на следећи начин.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Као Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Изаберите Цасе усрИнпт Случај је <100 Крај Суб 

Корак 6: Употријебите МсгБок функцију за додавање излазне поруке ако је Цасе Ис <100 труе.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Ас Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Изаберите Цасе усрИнпт Случај је <100 МсгБок "Наведени број је мањи од 100" Крај Суб 


Корак 7: Сада морамо да пружимо извршну изјаву када је вредност за усрИнпт већа од 100. Додајте Цасе и МсгБок да бисте то постигли.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Ас Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Изаберите Цасе усрИнпт Цасе је 100 МсгБок "Наведени број је већи од 100" Енд Суб 

Корак 8: Шта ако вредност коју корисник пружи износи тачно 100? За то немамо случај. Додајмо ону која кориснику даје поруку да је вредност коју је унео 100.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Ас Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Изаберите Цасе усрИнпт Случај је 100 МсгБок "Наведени број је већи од 100" Цасе Ис = 100 МсгБок "Наведени број је 100" Енд Суб 

Корак 9: Морамо да завршимо изјаву Селецт Цасе. Користите Енд Селецт за крај петље која је створена.

Шифра:

 Под свитцх_цасе_екампле1 () Дим усрИнпт Ас Интегер усрИнпт = ИнпутБок ("Молимо унесите вредност") Одаберите Цасе усрИнпт Цасе је 100 МсгБок "Наведени број је већи од 100" Цасе Ис = 100 МсгБок "Наведени број је 100" Енд Селецт Енд Суб 

Корак 10: Сада покрените овај код притиском на дугме Покрени или Ф5. Појавит ће се нови скочни оквир који тражи вриједност за провјеру. Унети ћу вредност као 110 и притиснути дугме ОК на пољу за унос. Пошто је број који унесем већи од 100, чим кликнем на У реду, на мом екрану ће се појавити нова порука која каже: „Наведени број је већи од 100“.

Случај ВБА прекидача - пример бр. 2

Претпоставимо да желимо да добијемо оцену ученика на основу њихових оцена. Погледајте доле наведене кораке како то можемо постићи.

Корак 1: Дефинишите нову подпроцеду под називом свитцх_цасе_екампле2 .

Шифра:

 Суб свитцх_цасе_екампле2 () Крај Суб 

Корак 2: Дефинишите две нове променљиве - обележи као цео број, а оцене као низ користећи Дим израз у створеној подпроцеди.

Шифра:

 Суб свитцх_цасе_екампле2 () Дим означава као Интегер Дим означава као Стринг Енд Суб 

Корак 3: Користите ВБА ИнпутБок функцију преко које корисник може унети вредност за променљиве оцене .

Шифра:

 Под Свитцх_цасе_екампле2 () Дим означава као Интегер Дим оцењује као жице знакова = ИнпутБок ("Молимо унесите ознаке") Крај Под 

Корак 4: Употријебите изјаву Селецт Цасе и наведите варијабле као израз који треба провјерити.

Шифра:

 Под свитцх_цасе_екампле2 () Дим ознаке као цели Дим разврставају се као жице = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Крај 

Пошто желимо да доделимо оцене ученицима на основу оцена које дају, прво морамо дефинисати оцене.

Корак 5: Употријебите изјаву случаја да провјерите јесу ли оцјене мање од 35. Ако је тако, додијелите вриједност варијабилним оцјенама као “Ф”.

Шифра:

 Под свитцх_цасе_екампле2 () Дим ознаке као цели Дим разврстани као Стринг ознаке = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Случај је <35 разреда = "Ф" Крај Под 

Корак 6: Ако су оцене између 35 и 45, доделите вредност „Д“ променљивим оценама.

Шифра:

 Под Свитцх_цасе_екампле2 () Дим ознаке као Интегер Дим разреди као Ознаке стрингова = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Случај је <35 разреда = "Ф" Случај 35 до 45 разреда = "Д" Крај Под 

Корак 7: Ако унесене ознаке између 46 и 55, вриједност „Ц“ треба додијелити промјењивим оцјенама.

Шифра:

 Под свитцх_цасе_екампле2 () Дим ознаке као цели Дим димензије као Ознаке стрингова = ИнпутБок ("Молимо унесите оцене") Изаберите Ознаке случаја Случај је <35 разреда = "Ф" Случај 35 до 45 разреда = "Д" Случај 46 до 55 оцена = "Ц" крај Суб 

Корак 8: Када су ознаке у опсегу 56 до 65, вредност додељена променљивим оценама треба да буде „Б“.

Шифра:

 Под свитцх_цасе_екампле2 () Дим ознаке као цели Дим димензије као Ознаке стрингова = ИнпутБок ("Молимо унесите оцене") Изаберите Ознаке случаја Случај је <35 разреда = "Ф" Случај 35 до 45 разреда = "Д" Случај 46 до 55 оцена = Случај "Ц" 56 до 65 разреда = "Б" Крај Пот 

Корак 9: За оцене од 66 до 75, оцена би требало да буде „А“.

Шифра:

 Под свитцх_цасе_екампле2 () Дим ознаке као цели Дим димензије као Ознаке стрингова = ИнпутБок ("Молимо унесите оцене") Изаберите Ознаке случаја Случај је <35 разреда = "Ф" Случај 35 до 45 разреда = "Д" Случај 46 до 55 оцена = Случај "Ц" 56 до 65 разреда = "Б" Случај 66 до 75 разреда = "А" Крај Пот 

Корак 10: Ако унесених ознака буде више од 75, променљивој оцени треба доделити вредност као "А +"

Шифра:

 Под Свитцх_цасе_екампле2 () Дим ознаке као цели Дим разврстани као Стринг ознаке = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Случај је 75 оцена = "А +" Крај Пот 

Корак 11: Употреба краја Изаберите затварање Селецт Цасе петље.

Шифра:

 Под Свитцх_цасе_екампле2 () Дим ознаке као цели Дим разврставају се као низови знакова = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Случај је 75 оцена = "А +" Крај Изаберите Крај Под 

12. корак: Сада морамо да проверимо која је оцена повезана са оценама које је студент унео. Да бисте то постигли, користите МсгБок функцију на такав начин да означава постигнуте оцене унутар оквира за поруке.

Шифра:

 Под Свитцх_цасе_екампле2 () Дим ознаке као цели Дим разврстани као Стринг ознаке = ИнпутБок ("Молимо унесите ознаке") Изаберите Ознаке случаја Случај је 75 оцена = "А +" Крај одабира МсгБок "Остварена оцена је:" & оцена Крај Суб 

Корак 13: Покрените овај код притиском на дугме Ф5 или Рун и можете видети ВБА поље за унос који захтева вредност. Унећу ознаке као 72 и притиснем тастер ОК који се налази на пољу за унос. Чим притиснем дугме ОК (У реду) унутар поља за унос, добићу поље са порукама у коме су назначене оцене повезане са унешеним ознакама.

Овако можемо користити изјаву Свитцх / Селецт Цасе унутар ВБА.

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

  • Свитцх цасе је заправо синоним за изјаву Селецт Цасе у ВБА. Названи су тако зато што уз помоћ ове изјаве можемо истовремено да прелазимо између различитих излаза.
  • Ова изјава се може користити као алтернатива петљи ИФ-Елсе кад год имамо три или више услова за проверу.
  • У реду је ако не користите ЕЛСЕ Цасе у изводу Селецт Цасе. Међутим, у том случају морате бити сигурни да је барем један услов тачан у читавој петљи.

Препоручени чланци

Ово је водич за ВБА Свитцх Цасе. Овдје смо расправљали о томе како користити Изјава о случају пребацивања у Екцелу ВБА заједно са практичним примерима и бесплатним екцел шаблоном. Можете и да прођете кроз друге наше предложене чланке -

  1. ВБА колекција (примери)
  2. ВБА ИФ Изјаве | Обрасци Екцел
  3. Како се користи функција Екцел ВБА за сортирање?
  4. ВБА Док је петља (примери са Екцеловим предлошком)
  5. ВБА Енвиронмент

Категорија: