Изјава о случају ВБА - Примери изјаве о случају ВБА за одабир

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

Изјава о случају Екцел ВБА

Изјава случаја ВБА једна је од логичких функција. Цасе Статемент тестира више логичких тестова и резултат добива на два начина, тј. Ако је резултат или логички тест ИСТИНА један скуп резултата, а ако је резултат или логички тест ФАЛСЕ, онда други скуп резултата.

Логички тестови се обично изводе помоћу ИФ формула, било да се ради о формули радног листа или у ВБА кодирању; на обе платформе, ова функција нам помаже да спроводимо многе врсте компликованих прорачуна. Многи од нас не схватају да имамо алтернативу изјави ИФ у ВБА, тј. „Изјави случаја“. Овај чланак вам пружа све детаље о овој логичкој изјави.

Синтакса

Испод је синтакса израза „Селецт Цасе“.

Изаберите случај „Вредност за тестирање“ Случај је „Логички тест“ Резултат ако је случај 1 ИСТИНА Случај је „Логички тест“ Резултат ако је случај 2 ТРУЕ Случај је „Логички тест“ Резултат ако је случај 3 ТРУЕ Случај Елсе Ако ниједан од резултати су ТРУЕ Енд Селецт

Ово је готово слично синтакси изјаве ИФ, али уместо да користимо ЕЛСЕИФ, користимо Случај 1, Случај 2, Случај 3 итд.

Примери изјаве о случају ВБА

Пример # 1

У ћелију А1 унео сам број као 240.

Сада ћемо тестирати овај број да ли је већи од 200 или не помоћу израза СЕЛЕЦТ ЦАСЕ .

1. корак: Отворите одмах изјаву Селецт Цасе.

Шифра:

Суб Селецт_Цасе_Екампле1 () Селецт Цасе Енд Суб

Корак 2: Једном када се отвори „Селецт Цасе“, треба да пружимо вредност коју тестирамо. У овом случају тестирамо вредности ћелије А1.

Шифра:

Суб Селецт_Цасе_Екампле1 () Изаберите опсег случајева ("А1"). Вредност Крај Суб

Корак 3: Након што се сада да вредност коју треба тестирати, морамо применити логичке тестове у екцелу помоћу речи „ Цасе Ис “.

Шифра:

Суб Селецт_Цасе_Екампле1 () Изаберите опсег случајева ("А1"). Вредност случаја је> 200 Крај Суб

Корак 4: Сада, у следећем реду, треба да наведемо вредност „резултат“ ако је примењени логички тест ИСТИНА. У пољу за поруку потребан нам је резултат као „Број је> 200“.

Шифра:

Суб Селецт_Цасе_Екампле1 () Изаберите опсег случајева ("А1"). Вредност случаја је> 200 МсгБок "Број је> 200" Крај Суб

Корак 5: У овом примеру потребна су нам само два резултата, па нећу користити више изјава „Случај је“. Даље ћу употребити реч „Цасе Елсе“ да затворим ВБА „Селецт Цасе“ изјаву.

Шифра:

Суб Селецт_Цасе_Екампле1 () Изаберите опсег случајева ("А1"). Вредност случаја је> 200 МсгБок "Број је> 200" Цасе Елсе МсгБок "Број је <200" Крај Суб

Корак 6: Једном када су наведени сви случајеви, морамо затворити изјаву селецт цасе помоћу речи „Енд Селецт“.

Шифра:

Суб Селецт_Цасе_Екампле1 () Изаберите опсег случаја ("А1"). Вредност случаја је> 200 МсгБок "Број је> 200" Цасе Елсе МсгБок "Број је <200" Енд Селецт Енд Суб

Корак 7: Сада покрените код и погледајте какав је резултат који смо добили у оквиру ВБА поруке.

Резултат који смо добили је „Број је> 200“, јер је у ћелији А1 вредност 240, што је> 200.

Пример # 2

Сада ћемо видети неколико практичних примера резултата тестирања у реалном времену. Погледајте доленаведени ВБА код.

Шифра:

Суб Селецт_Цасе_Екампле2 () Дим СцореЦард Ас Интегер СцореЦард = Апплицатион.ИнпутБок („Оцена треба да буде ц / б 0 до 100“, „Који је резултат који желите да тестирате“) Случај Селецт Цасе СцореЦард Цасе је> = 85 МсгБок „Дистинцтион“ Цасе Је> = 60 МсгБок "Прва класа" кућиште Је> = 50 МсгБок "Друга класа" Цасе је> = 35 МсгБок "Пасс" Цасе Елсе МсгБок "Фаил" Енд Селецт Енд Суб

Дозволи ми да објасним код ред по ред да бих боље разумео.

Прво сам променљиву прогласио Интегер, а за ову променљиву доделио сам ИнпутБок у ВБА, где корисник мора да унесе резултат између 0 и 100.

Када покренете код, видећете поље за унос као доле и у ово поље за унос треба да унесете резултат.

Сад све што унесемо у поље за унос биће сачувано у променљивој „СцореЦард“.

In the next line, I have applied a select case statement to test this score.

First, it will test the ScoreCard>=85 or not. If this is TRUE, then we will get the value in the message box as “Distinction.”

Select Case ScoreCard Case Is>= 85 MsgBox "Distinction"

Similarly, in the following lines, I have applied the second test as ScoreCard>=60. If this is TRUE, then it will show the result as “First.”

Case Is>= 60 MsgBox "First Class"

Like this, I have applied other tests as well, and in the end, I have used the “Case Else” statement. If all the applied logical tests are FALSE, then we will get the result as “Fail.”

Case Else MsgBox "Fail"

Now I have supplied 68 as the score, and we should get the result as “First Class” in the message box.

Example #3 - Using the “To” keyword

In the above example, we have used student scores to arrive at the result. The same test can be conducted by using the “To” word to determine the lower limit and upper limit of the logical test.

Code:

Sub Select_Case_Example3() Dim ScoreCard As Integer ScoreCard = Application.InputBox("Score should be b/w 0 to 100", "What is the score you want to test") Select Case ScoreCard Case 85 To 100 MsgBox "Distinction" Case 60 To 84 MsgBox "First Class" Case 50 To 59 MsgBox "Second Class" Case 35 To 49 MsgBox "Pass" Case Else MsgBox "Fail" End Select End Sub

I have used the same code as above, but the only yellow-colored area I have changed here. Based on the number we type in the input box accordingly, we will get the result.

Things to Remember

  • Селецт Цасе је алтернатива изјави ИФ.
  • Селецт Цасе је доступан само са ВБА.
  • У првом реду „Изабери случај“ треба да наведемо само вредност коју треба тестирати. Затим у реду „Цасе“ треба да применимо логички тест. Ово је за разлику од нашег ИФ стања.

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