Как да използвам Select Case Statement във VBA? (Примери)

Изложение на дело за Excel VBA

Select Case е заместител на записването на множество оператори if във VBA, когато имаме много условия в кода, може да се наложи да използваме множество инструкции If и което може да бъде досадно, тъй като става по-сложно, тъй като се предоставят повече от операторите If, в select case statement ние определяме критериите като различни случаи и резултати според тях.

SELECT CASE помага в процеса на вземане на решения. В това се използва само един израз за оценка на различните възможни случаи. Множество условия се анализират лесно за изпълнение на разработения код. Това твърдение за случай се използва като заместител на ELSE IF за оценка на изрази. Класифицира се като логическа функция, която е вградена в Excel. За да използвате тази функция, кодът се въвежда чрез редактора на visual basic, представен в раздела за разработчици.

Обяснение

В Select Case се използват различни групи твърдения. Следният синтаксис трябва да се следва, за да се използва ефективно това. Той е подобен на оператора за превключване, представен в други езици за програмиране като Java, C # и PHP.

Изберете (Case) Expression за тестване (Case) Списък на изявленията за изразяване (Case 1, Case 2, Case 3 и т.н. …) Case Else (Else Statements) End Select

Обяснението на термините, свързани с избрания случай, се предоставя, както следва.

Израз за тестване: Изисква се да се оценят различните типове данни като цяло число, низ, булев, обект и символ.

Списък с изрази: Изразът се създава заедно с кутията, за да се намери точното съвпадение на въведения вход. Ако има повече от два израза, те се разделят с помощта на оператора запетая. 'Is' е ключова дума, използвана при сравняване на двата израза, използвайки логическите оператори в Excel като =,, =.

  • End Select: Затваря дефиницията на случай на избор на конструктор
  • Изявления: Изявленията се разработват с помощта на случая, за да стартират изразите, които се оценяват, за да се анализира дали има някакво съвпадение
  • Else Statements: Това е да тествате инструкцията else, когато изразът за тестване не съвпада с нито един от случаите.

Как да използвам VBA Select Case Case?

Функцията за избор на случай, предоставена от VBA, не се изпълнява в нормалните работни листове. Трябва да използваме опцията Visual Basic в раздела за програмисти. Дефинираните от потребителя функции и кодиране се създават в режим за разработчици, за да стартират различните малки приложения в бизнес полето.

Използва се в ситуации, когато има вложени if изрази в Excel. Това е най-добрият вариант да се справите с различни случаи. За да използвате ефективно тази опция, трябва да се изпълнят следните задачи.

  • На първо място, трябва да създаде макрос, като постави контролния бутон на командата в листа на Excel.
  • След това щракнете с десния бутон върху командния бутон и изберете опцията за изглед на кода.
  • Поставете кода между функцията на командния бутон и крайната подменю.
  • Отстранете грешката в кода, за да идентифицирате всички синтаксисни грешки.
  • Компилирайте кода, за да намерите грешки при компилацията, за да изпълните успешно програмата
  • Променете входните стойности, за да наблюдавате различни резултати въз основа на критериите за съвпадение

Пример # 1 - Проста декларация за случай на избор

Този пример е да се разбере простият случай за избор, за да се намери съответстващата стойност.

Код:

Частен Sub Selcaseexmample () Затъмнете A Като цяло A = 20 Изберете случай A Случай 10 MsgBox "Първият случай е съвпаднал!" Случай 20 MsgBox "Вторият случай е съчетан!" Случай 30 MsgBox "Трети случай е съчетан в Select Case!" Случай 40 MsgBox "Четвъртият случай е съчетан в Select Case!" Case Else MsgBox "Нито един от случаите не е съчетан!" End Изберете End Sub

Резултат:

За сравнение на тестовия израз с различни случаи се използва израз на четири случая и изявление case else. В настоящия пример вторият случай е съчетан като променлива А съвпада с 20.

Пример # 2 - Ключова дума „До“ за тестване на оценките

Този пример обяснява използването на ключовата дума „До“ с избрания регистър.

Код:

Частен Sub Selcasetoexample () Затъмняване на студентски марки като целочислени студентски марки = InputBox ("Въвеждане на маркировки между 1 до 100?") Избор на студентски марки Случай 1 до 36 MsgBox "Fail!" Калъф 37 до 55 MsgBox "C клас" Калъф 56 до 80 MsgBox "B клас" Калъф 81 до 100 MsgBox "A клас" Кейс Else MsgBox "Извън обхвата" End Select End Sub

Резултат:

Ключовата дума „До“ е полезна при дефинирането на набора от тестови изрази в диапазон. Полезно е при намирането на оценката, получена от студент чрез сравняване на различните случаи. След като стартираме програмата, трябва да въведем стойността, за да получим резултата.

Резултатът се показва със съобщение, както е показано на горната екранна снимка.

Пример # 3 - Използване на ключова дума „Is“ с главна буква

Този пример демонстрира използването на ключовата дума 'Is' с избрания регистър.

Код:

Sub CheckNumber () Dim NumInput As Integer NumInput = InputBox ("Please enter a number") Select Case NumInput Case Is = 200 MsgBox "Въведохте число, по-голямо или равно на 200" End Select End Sub

Ключовата дума „Is“ помага да се намерят съответстващите стойности само с главни букви. Той сравнява тестовия израз с даден вход, за да произведе изхода.

Резултатът се получава, както е показано на фигурата, ако въведената стойност е повече от 200

Пример # 4 - С команден бутон за промяна на стойностите

Избраният случай се използва и с бутона Command чрез създаване на макрос.

Код:

Подцвят () Затъмнен цвят Като низ на цвят = Обхват ("A1"). Избор на стойност Цвят на калъфа Калъф "Червен", "Зелен", "Жълт" Обхват ("B1"). Стойност = 1 Калъф "Бял", "Черен "," Кафяв "Обхват (" B1 "). Стойност = 2 случая" Синьо "," Небесно синьо "Обхват (" B1 "). Стойност = 3 калъфа Друг обхват (" B1 "). Стойност = 4 Край Изберете край

Както е показано в програмата, входът се взема от клетките на работния лист. Програмата се изпълнява след щракване върху командния бутон, използван от ActiveX контролите. В това се използва разделител на запетая за комбиниране на тестовите изрази.

Когато стойността в клетка A1 се промени, това води до промяна в клетката B1 също чрез стартиране на макроса на excel чрез командния бутон. Можете да се обърнете към екранната снимка, дадена по-долу: -

Пример # 5 - Проверете число Нечетно или четно

Този пример за помощ при проверка на число е четен или нечетен.

Код:

Sub CheckOddEven () CheckValue = InputBox ("Въведете номера") Изберете Case (CheckValue Mod 2) = 0 Case True MsgBox "Числото е четно" Case False MsgBox "Числото е нечетно" End Select End Sub

Кодирането е разработено, както е показано на екранната снимка, а изходът се показва, както следва, когато се въведе дори номерът.

Пример # 6 - Вложени отчети за избрани случаи

Влагането е полезна характеристика на избрания случай и е показан начинът, по който се прави.

Код:

Sub TestWeekday () Select Case Weekday (Now) Case 1, 7 Select Case Weekday (Now) Case 1 MsgBox "Today is Sunday" Case Else MsgBox "Today is Saturday" End Select Case Else MsgBox "Today is a Weekday" End Select End Под

Тук избраният случай е дефиниран в друг избран случай, за да тествате ден, делничен ден или уикенд. С изключение на случай 1 и 7, всички останали са делнични дни (Забележка: случай 1 е неделя, а случай 7 е събота)

Неща за запомняне

  • Ключовата дума „Is“, използвана в израза на (case) и (case else), не са равни.
  • Контролът ActiveX трябва да се използва при изпълнение на програма чрез команден бутон, който взема вход и показва изход в обхвата на Excel листа от клетки.
  • Трудно е да стартирате програмите във VBA, ако макросите са деактивирани и винаги позволяват на макросите да получат най-добри резултати.
  • VBA е чувствителен към малки и големи букви и входът трябва да се въвежда точно, за да се получат по-добри резултати.

Интересни статии...