Kaip VBA pasirinkti „Select Case Statement“? (Pavyzdžiai)

„Excel VBA Select Case Statement“

Pasirinktas atvejis yra pakaitalas užrašyti kelis „if“ teiginius VBA, kai kode turime daug sąlygų, gali tekti naudoti kelis „If“ sakinius ir tai gali būti varginanti, nes tampa sudėtingesnė, nes pateikiama daugiau „If“ sakinių, pasirinkite atvejo pareiškimą, mes apibrėžiame kriterijus kaip skirtingus atvejus ir rezultatus pagal juos.

„SELECT CASE“ padeda priimti sprendimus. Šiuo atveju, norint įvertinti skirtingus galimus atvejus, naudojama tik viena išraiška. Sukurtam kodui vykdyti lengvai išanalizuojamos kelios sąlygos. Šis atvejo teiginys naudojamas kaip pakaitinis teiginys ELSE IF vertinant išraiškas. Jis klasifikuojamas kaip loginė funkcija, kuri yra integruota į „Excel“. Norėdami naudoti šią funkciją, kodas įvedamas per „Visual Basic“ redaktorių, pateiktą skirtuke „Developer“.

Paaiškinimas

Pasirinkimo atveju naudojamos įvairios teiginių grupės. Norint tai efektyviai naudoti, reikia vadovautis šia sintakse. Tai panašu į jungiklio teiginį, pateiktą kitomis programavimo kalbomis, tokiomis kaip Java, C # ir PHP.

Pasirinkite (atvejis) testavimui skirtą išraišką (atvejis) išraiškų pareiškimų sąrašas (1 atvejis, 2 atvejis, 3 atvejis ir pan.). Kitas atvejis (kiti teiginiai) pabaiga

Su pasirinktu atveju susijusių terminų paaiškinimas pateikiamas taip.

Testavimo išraiška: būtina įvertinti įvairių tipų duomenis, tokius kaip sveikasis skaičius, eilutė, loginė reikšmė, objektas ir simbolis.

Išraiškų sąrašas: Išraiškos kuriamos kartu su atveju, kad būtų galima rasti tikslią įvesties įvesties atitiktį. Jei yra daugiau nei du posakiai, jie atskiriami kablelio operatoriumi. „Is“ yra raktinis žodis, naudojamas lyginant abi išraiškas naudojant „Excel“ loginius operatorius, pvz., =,, =.

  • Pabaigos pasirinkimas: uždaro konstruktoriaus pasirinkimo atvejo apibrėžimą
  • Teiginiai: teiginiai kuriami naudojant atvejį, norint paleisti išraiškas, kurios yra įvertintos, siekiant išanalizuoti, ar yra koks nors atitikimo teiginys
  • Kiti teiginiai: Tai yra kito teiginio testavimas, kai testavimo išraiška nesutampa su jokiu atveju.

Kaip naudotis VBA Select Case Statement?

VBA teikiama pasirinkto atvejo funkcija neveikia įprastuose darbalapiuose. Turime naudoti „Visual Basic“ parinktį skirtuke „Kūrėjas“. Vartotojo nustatytos funkcijos ir kodavimas kuriamos kūrėjo režimu, kad būtų galima paleisti įvairias mažas verslo srities programas.

Jis naudojamas situacijose, kai yra įterpti, jei „excel“ teiginiai. Tai geriausias variantas nagrinėti įvairius bylų aprašymus. Norint efektyviai naudoti šią parinktį, reikia atlikti šias užduotis.

  • Visų pirma, jis turi sukurti makrokomandą, „Excel“ lape įdėdamas komandos mygtuko valdymą.
  • Po to dešiniuoju pelės mygtuku spustelėkite komandos mygtuką ir pasirinkite rodinio kodo parinktį.
  • Įdėkite kodą tarp komandos mygtuko funkcijos ir pabaigos.
  • Derinkite kodą, kad nustatytumėte visas sintaksės klaidas.
  • Sudarykite kodą, kad rastumėte kompiliavimo klaidas, kad sėkmingai įvykdytumėte programą
  • Pakeiskite įvesties vertes, kad stebėtumėte skirtingus rezultatus, atsižvelgdami į atitikimo kriterijus

1 pavyzdys - paprastas atvejo aprašymas

Šis pavyzdys skirtas suprasti paprastą pasirinktą atvejį, kad surastumėte suderintą vertę.

Kodas:

Privatus antrinis pavyzdinis pavyzdys () Dimensija A kaip sveikasis skaičius A = 20 Pasirinkite atvejį A atvejis 10 MsgBox "Pirmoji byla yra suderinta!" 20 atvejis „MsgBox“ „Antroji byla yra suderinta!“ 30 atvejis „MsgBox“ „Trečioji byla sutampa pasirinktoje byloje!“ 40 atvejis „MsgBox“ „Ketvirtoji byla sutampa pasirinktoje byloje!“ Byla Else MsgBox "Nė viena byla neprilygsta!" Pabaiga Pasirinkite Pabaiga

Rezultatas:

Keturi atvejo pareiškimas ir atvejo kitas teiginys naudojami norint palyginti testo išraišką su skirtingais atvejais. Šiame pavyzdyje antrasis atvejis derinamas, nes kintamasis A sutampa su 20.

2 pavyzdys - raktinis žodis „Kam“, norint išbandyti pažymius

Šiame pavyzdyje paaiškinamas raktinio žodžio „Kam“ naudojimas pasirinktu atveju.

Kodas:

Privatus antrinis pasirinktinispavyzdys () Uždenkite studentų žymes kaip sveiką studentų žymę = InputBox ("Įveskite žymes nuo 1 iki 100?") Pasirinkite atvejį studentų žymės 1–36 atvejai MsgBox "Nepavyko!" Byla nuo 37 iki 55 „MsgBox“ „C“ klasė “Byla nuo 56 iki 80„ MsgBox “„ B “klasė“ Byla nuo 81 iki 100 „MsgBox“ „A klasės“ byla „Kita„ MsgBox “byla nepatenka į diapazoną“ Pabaiga Pasirinkite Pabaiga

Rezultatas:

Raktinis žodis „Kam“ yra naudingas apibrėžiant bandymo išraiškų rinkinį diapazone. Tai naudinga ieškant pažymio, kurį gavo mokinys, lyginant skirtingus atvejus. Vykdę programą, norėdami gauti rezultatą, turime įvesti vertę.

Išvestis rodoma su pranešimų laukeliu, kaip parodyta aukščiau pateiktoje ekrano kopijoje.

3 pavyzdys - „Is“ raktinio žodžio naudojimas su „Select Case“

Šis pavyzdys rodo „Is“ raktinio žodžio naudojimą pasirinktu atveju.

Kodas:

Sub CheckNumber () Dim NumInput As Integer NumInput = InputBox ("Please enter a number") Select Case NumInput Case Is = 200 MsgBox "Įvedėte skaičių, didesnį arba lygų 200" End Select End End Sub

Raktinis žodis „yra“ padeda rasti suderintas reikšmes, nurodant tik atvejus. Jis lygina testo išraišką su duotu įėjimu, kad gautų išvestį.

Išvestis gaunama taip, kaip parodyta paveikslėlyje, jei įvesta vertė yra didesnė nei 200

4 pavyzdys - naudodami komandų mygtuką, kad pakeistumėte vertes

Pasirinktas atvejis taip pat naudojamas su mygtuku Komanda sukuriant makrokomandą.

Kodas:

Pagrindinė spalva () Blyški spalva kaip eilutės spalva = diapazonas („A1“). Reikšmė Pasirinkite dėklo spalvą Dėklas „Raudonas“, „Žalias“, „Geltonas“ diapazonas („B1“). Reikšmė = 1 atvejis „Baltas“, „Juodas“ "," Brown "diapazonas (" B1 "). Reikšmė = 2 atvejai" Blue "," Sky Blue "diapazonas (" B1 "). Reikšmė = 3 atvejai kitur (" B1 "). Reikšmė = 4 pabaiga Pasirinkite pabaigos antrinė dalis

Kaip parodyta programoje, įvestis paimama iš darbalapio langelių. Programa vykdoma spustelėjus komandos mygtuką, naudojamą iš „ActiveX“ valdiklių. Šiuo atveju kablelio skyriklis naudojamas sujungti bandomąsias išraiškas.

Pasikeitus langelio A1 reikšmei, pasikeičia B1 langelis taip pat paleidžiant „Excel“ makrokomandą per komandos mygtuką. Galite kreiptis į toliau pateiktą ekrano kopiją: -

5 pavyzdys - patikrinkite skaičių nelyginis arba lyginis

Šis pavyzdys, padedantis patikrinti skaičių, yra lyginis ar nelyginis.

Kodas:

Sub CheckOddEven () CheckValue = InputBox ("Įveskite skaičių") Pasirinkite atvejį (CheckValue Mod 2) = 0 Byla True MsgBox "Skaičius yra lyginis" Case False MsgBox "Skaičius nelyginis" End Select End End Sub

Sukurtas kodavimas, kaip parodyta ekrano kopijoje, o išvestis rodoma taip, kai įvedamas net skaičius.

6 pavyzdys - įdėtos pasirinktų atvejų ataskaitos

Lizdai yra naudinga pasirinkto atvejo funkcija, ir parodoma, kaip tai daroma.

Kodas:

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 Sub

Here the select case is defined inside another select case to test a day, weekday, or weekend. Except for case 1 and 7 remaining all are weekdays (Note: case 1 is Sunday and case 7 is Saturday)

Things to Remember

  • The ‘Is’ keyword using in the statement of (case) and (case else) are not equal.
  • ActiveX control should be used in executing program through a command button taking input and displaying output in the excel sheet range of cells.
  • It is hard to run the programs in VBA if macros are disabled and always enable Macros to get the best results.
  • VBA yra didžiosios ir mažosios raidės, todėl norint įgyti geresnių rezultatų, įvestį reikia įvesti tiksliai.

Įdomios straipsniai...