Odaberite opis vba slučaja. Operater podružnice "Odaberi slučaj"

Odaberite primjer izjave slučaja

Ovdje bi bio koristan primjer koji pokazuje kako bi struktura Select Case zapravo mogla izgledati.

Odaberite Slučaj objRol l OfFi l m.Tip

Futrola "Slide"

intSlide = intSlide + 1

Slučaj "Obojeni negativ"

int Obojeno negativno = int Obojeno negativno + 1

Slučaj "BW negativan"

intHNegative = intHNegative + 1

MgaBox " Nepoznata vrsta filmove. "

U osnovi, ovaj dio koda radi isto što i gornji kôd za primjer u odjeljku o naredbama If. ... .ElseIf (samo je provjera isteka izostavljena). Međutim, od tada se čini da je naš hipotetički objekt koji predstavlja filmsku rolu malo izmijenjen - informacije o boji i obezbojenosti filma sada su također predstavljene svojstvom Toure, a ne zasebnim svojstvom Color, kao prije.

A ako je to slučaj, program mora raditi sa samo jednom vrijednošću - s vrijednošću koju vraća svojstvo Type. - ali se ova vrijednost uspoređuje s nekoliko važećih. Dakle, Select Case je upravo ono što je liječnik odredio za naš slučaj.

Prva primjena iskaza Case u ovom primjeru ekvivalentna je upotrebi If objRollOf Film.Type = "Slide" Zatim, tj. ako je svojstvo Vrsta objekta "Slide", tada program izvršava sljedeću naredbu, u suprotnom će preći na drugu naredbu Case.

Imajte na umu da u kriterijima nema znakova operacije čija se prisutnost na prvi pogled čini logičnom. To je zato što Select Cases jednostavno implicira jednakost kao operator usporedbe.

Iz knjige SOFTVER UMETNIH SISTEMA. Opći zahtjevi za izradu i dokumentaciju autor Državni standard Rusije

Iz knjige Računalo + mobilni: učinkovita interakcija autor Goltsman Viktor Iosifovich

Slanje sa web stranice operatera Danas, vjerovatno, već podržavaju svi operateri slanje SMS -a sa vaše web lokacije. Poruke se, međutim, mogu slati samo pretplatnicima ovog operatera, ali to je obično dovoljno. Dakle, za vježbanje. Sada ćemo razmotriti

Iz UNIX knjige: Procesna interakcija autor Stevens William Richard

Primjer: Posix redovi poruka i funkcija odabira Deskriptor reda poruka (varijabla tipa mqd_t) nije "običan" deskriptor i ne može se koristiti s funkcijama odabira i anketiranja (Poglavlje 6). Međutim, mogu se koristiti zajedno s kanalom i funkcijom mq_notify. (Slično

Iz VBA knjige za lutke autor Cummings Steve

Iz knjige Firebird VODIČ ZA DIZAJNERE BAZE PODATAKA autor Borri Helen

Provjeravanje uvjeta u izjavama o izabranim slučajevima Struktura odabira slučaja ne koristi eksplicitno potpune uvjetne izraze poput onih o kojima je gore bilo riječi (pogledajte Kurs o korištenju uvjetnih izraza). Svaki uvjet morate razbiti na dva dijela, predstavljena kao

Iz knjige Umjetnost programiranja u Shell skriptnom jeziku od Cooper Mendel

Iz knjige C Jezik - Vodič za početnike od Prata Stephen

Iz knjige Linux i UNIX: Shell programiranje. Vodič za programere. autor Teinsley David

Iz C ++ knjige za početnike autor Lippman Stanley

Primjer 10-24. Koristeći slučaj #! / Bin / bashecho; echo "Pritisnite taster, a zatim taster za povratak." pročitajte unos slova "$ Keypress" u) echo "mala slova" ;; ) echo "Veliko slovo" ;; ) echo "Number" ;; *) echo "Interpunkcija, razmak ili nešto drugo" ;; esac # Dozvoljeno

Iz UNIX knjige: Razvoj umreženih aplikacija autor Stevens William Richard

Primjer 10-25. Kreirajte menije sa velikim brojem slova!! / Bin / bash # Primjer grube baze podataka jasan # Brisanje eha ekrana "Lista" echo "------" echo "Odaberite osobu koja vas zanima:" echoecho "[E] kombiji, Roland "echo" [J] ones, Mildred "echo" [S] mith, Julie "echo" [Z] ane, Morris "echoread casecase" $ person "u # Napomena: varijabla je navedena.

Iz knjige autora

Primjer 10-26. Naredba slučaja omogućava vam korištenje zamjene naredbi umjesto raščlanjene varijable #! / Bin / bash # Zamjena naredbi u "case" .case $ (arch) u # naredbi "arch" vraća niz koji opisuje hardversku arhitekturu. I386) echo "Mašina zasnovana na procesoru 80386" ;; i486) echo "Mašina zasnovana na

Iz knjige autora

Primjer A-18. Generirajte proste brojeve pomoću operatora modulo (modulo) #! / Bin / bash # primes.sh: Generirajte proste brojeve, bez polja. # Autor: Stephane Chazelas. # Ova skripta ne koristi klasični algoritam "Sito iz Eratostena", # + umjesto toga

Iz knjige autora

PROŠIRENJE IZJAVE if sa drugim Najjednostavniji oblik if naredbe je ona koju smo upravo koristili: if (izraz) izraz Obično se izraz ovdje razumije kao uvjetni izraz, uz njegovu pomoć uspoređuju se vrijednosti dviju veličina (na primjer, x> y

Iz knjige autora

18.8.2. Prekid izvršenja iskaza slučaja Razmotrite sljedeći primjer. Skripta izvodi beskonačnu petlju sve dok korisnik ne unese broj veći od 5. Da prekine petlju i vrati se na komandna linija tumač koristi naredbu break. $ pg

Iz knjige autora

Iz knjige autora

Jednostavan primjer korištenja funkcije odabira Sada ćemo prepisati naš izvanpojasni prijemnik podataka i upotrijebiti funkciju odabira umjesto signala SIGURG. Lista 24.3 prikazuje program koji prima; Domaćin program u kojem (pogrešno)

Većina važni operateri izrazi korišteni u Excel VBA Da li su operateri Ako onda i Odaberite slučaj... Oba ova izraza provjeravaju jedan ili više uvjeta i, ovisno o rezultatu, izvode različite radnje. Zatim ćemo govoriti o ova dva uvjetna operatora detaljnije.

Visual Basic Ako ... Tada izjava

Operater Ako onda provjerava stanje i, ako je TRUE, tada se izvršava navedeni skup radnji. Skup akcija se također može definirati za izvođenje ako je uvjet FALSE.

Sintaksa operatora Ako onda Volim ovo:

Ako Stanje 1 Onda
Radnje ako je uslov 1 ispunjen
Ostalo Uslov 2 Onda
Radnje ako je uslov 2 ispunjen
Inače
Radnje u slučaju da nijedan od uslova nije ispunjen
Kraj Ako

U ovom izrazu, elementi Ostalo i Inače uslovi operatera se ne mogu koristiti ako nisu potrebni.

Ispod je primjer u kojem se pomoću operatora koristi Ako onda boja ispune aktivne ćelije se mijenja ovisno o vrijednosti u njoj:

Ako je ActiveCell.Value< 5 Then ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет ElseIf ActiveCell.Value < 10 Then ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End If

Imajte na umu da se izvršavanje uvjetne naredbe prekida čim se uvjet ispuni. Stoga, ako je vrijednost varijable ActiveCell manje od 5, tada prvi uvjet postaje ispunjen i ćelija postaje zelena. Nakon toga izvršenje operatora Ako onda se prekida i drugi uvjeti se ne provjeravaju.

Odaberite Izjavu o slučaju u Visual Basicu

Operater Odaberite slučaj slično operateru Ako onda time što provjerava istinitost stanja i, ovisno o rezultatu, bira jednu od opcija za djelovanje.

Sintaksa operatora Odaberite slučaj Volim ovo:

Odaberite slučaj Izraz
Slučaj Vrijednost1
Radnje u slučaju da se rezultat izraza podudara s vrijednošću1
Slučaj Vrijednost2
Radnje u slučaju da se rezultat izraza podudara s vrijednošću 2

Slučaj drugi
Radnje u slučaju da rezultat izraza ne odgovara nijednoj od navedenih opcija Vrijednosti
Kraj Odaberite

Element Drugi slučaj opcionalno, ali se preporučuje za rukovanje neočekivanim vrijednostima.

U sljedećem primjeru, pomoću konstrukcije Odaberite slučaj boja ispune trenutne ćelije se mijenja ovisno o vrijednosti u njoj:

Odaberite slučaj ActiveCell.Value Slučaj je<= 5 ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет Case 6, 7, 8, 9 ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Case 10 ActiveCell.Interior.Color = 65535 "Ячейка окрашивается в жёлтый цвет Case 11 To 20 ActiveCell.Interior.Color = 10498160 "Ячейка окрашивается в лиловый цвет Case Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End Select

Gornji primjer pokazuje kako možete postaviti vrijednost za element na različite načine Slučaj u građevinarstvu Odaberite slučaj... Ovo su načini:

Slučaj je<= 5 Dakle, pomoću ključne riječi Slučaj je moguće je provjeriti zadovoljava li vrijednost Izrazi stanje kao <=5 .
Slučajevi 6, 7, 8, 9 Ovako možete provjeriti je li vrijednost ista Izrazi s jednom od navedenih vrijednosti. Navedene vrijednosti odvojene su zarezima.
Slučaj 10 Time se provjerava je li vrijednost ista Izrazi sa zadatom vrednošću.
Slučaj 11 do 20 Dakle, možete napisati izraz da provjerite zadovoljava li vrijednost Izrazi stanje kao od 11 do 20(ekvivalent nejednakosti „11<=значение<=20”).
Slučaj drugi Ovako, koristeći ključnu riječ Inače, radnje su naznačene u slučaju da vrijednost Izrazi ne odgovara nijednoj od navedenih opcija Slučaj.

Čim se pronađe jedan od uvjeta, izvršavaju se odgovarajuće radnje i izlazi se iz strukture. Odaberite slučaj... To jest, u svakom slučaju, samo će jedna od navedenih grana biti izvedena Slučaj.

U stvarnim programima često je potrebno donijeti složenije izbore u postupcima, birajući između tri ili više grana. U tom slučaju možete postaviti operatore Ako..Onda..Else jedno u drugo. To se naziva ugniježđenje izjava.

Gornja procedura koristi nekoliko ugniježđenih uvjetnih izraza skoka. Treba reći da će ovaj postupak funkcionirati samo u Excelu, budući da koristi metodu Application.InputBox (pogledajte Funkcije aplikacije hosta). Ova metoda sprječava korisnika da unese bilo što osim broja dok je funkcija aktivna.

Ako korisnik ne unese broj, tada prima poruku o tome.



Ako korisnik ne unese ništa, tada dobiva poruku o grešci.




Ako korisnik koristi gumb "Odustani", dobiva poruku "Nema unesenih podataka".


VBA nudi stenografsku verziju operatora Ako..Onda..Else koji je sažeti ekvivalent ugniježđenih izraza u Ako..Onda..Else koristi se na popisu. Tako kratak oblik je operator Ako..Onda..ElseIf



Koju od opcija koristiti je pitanje o kojem svaki programer odlučuje sam. Vjeruje se da je druga opcija kompaktnija, dok je prva prikladnija i razumljivija.


Operatore možete ugnijezditi kako biste odabrali nekoliko mogućih grana koda Ako..Onda..Else na mnogo nivoa duboko, ali praćenje napretka grana postaje sve teže.

VBA ima operatora uvjetne grane za upotrebu u slučajevima kada postoji mnogo različitih grana koda na koje možete izabrati - Odaberite slučaj... Radi na sličan način kao i inače..Ako, ali je jasnije.

Ključne riječi Select Case koriste se s mnogim izrazima Case, gdje svaki izraz Case provjerava postoji li drugi uvjet, a izvršava se samo jedna od grana slučaja. Grana Case može sadržavati jedan, nekoliko ili nijedan VBA izraz.


Bezuslovni operater skoka

Bezuslovni operater skoka, moglo bi se reći, začetak je ranih programskih jezika, u kojem je praktično bio jedini način organiziranja cikličnog izvršavanja blokova koda.

Operator bezuslovnog skoka uvijek mijenja redoslijed izvođenja izraza u proceduri ili funkciji. Ovim se ne provjeravaju nikakvi uslovi.


Sintaksa:

Idi na liniju


linija- bilo koja valjana oznaka ili broj retka u istoj proceduri ili funkciji koja sadrži naredbu GoTo.

U današnjem postu ćemo razgovarati o izjavi o odabranom slučaju VBA. VBA Select Case može se koristiti umjesto složenih Excel ugniježđenih naredbi If. To čini VBA kôd bržim za izvođenje i lakšim razumijevanjem.

Naredba Select-Case (u nekim jezicima se naziva i Switch Case) provjerava varijablu ili izraz za različite slučajeve (vrijednosti). Ako bilo koji slučaj postane istinit, izvršava se samo taj slučaj, a program zanemaruje sve ostale slučajeve.

Ako se sjećate u prošlom postu o kojem smo govorili, "kako možete".

Sintaksa VBA Izjave o slučaju:

Sintaksa je sljedeća:

Odaberite Case Condition
Vrijednost slučaja_1
Kôd za izvršavanje kada je uslov = vrijednost_1
Vrijednost slučaja_2
Kôd za izvršavanje kada je uslov = vrijednost_2
Vrijednost slučaja_3
Kôd za izvršavanje kada je uslov = vrijednost_3
Drugi slučaj
Kôd za izvršavanje Kada su svi drugi slučajevi lažni
Kraj Odaberite

Ovdje se ‘uvjet’ odnosi na varijablu ili izraz koji se testira i na temelju kojeg će se izvršiti bilo koji segment koda.

„Vrijednost_1“, „vrijednost_2“ i „vrijednost_3“ mogući su ishodi „Uslova“. Kad god se bilo koja od ovih vrijednosti podudara s 'Uvjetom', izvršit će se odgovarajući blok Case.

'Ostalo' je vrsta zadane vrijednosti slučaja, koja će se izvršiti samo ako sve gore navedene izjave slučaja rezultiraju u Netačno. Slučaj ‘Ostalo’ nije obavezan, ali općenito se smatra dobrom praksom za njegovu upotrebu.

Primjeri Select-Case u VBA:

Pređimo sada na neke praktične primjere izjava o slučajevima.

Primjer 1: Odaberite Izjavu slučaja s izrazom.

U donjem primjeru smo dali uvjet (tj. A = b) izjavi Select Case. Ako je ovo istina, tada će se izvršiti blok 'Case True', a ako je False, izvršit će se blok 'Case False'.

Sub Select_Case_Example () "Unesite vrijednost za varijable a = InputBox (" Unesite vrijednost za A: ") b = InputBox (" Unesite vrijednost za B: ")" Vrednovanje izraza Select Case a = b Case True MsgBox " izraz je TRUE "Case False MsgBox" Izrazi su FALSE "End Odaberite End Sub

Bilješka: U ovom kodu se koristi za dobivanje vrijednosti od korisnika.

Primjer 2: Iskaz slučaja za provjeru tekstualnih nizova

U ovom primjeru ćemo uporediti tekstualne nizove u iskazima Case. Ako se pronađe podudaranje, tada će se izvršiti odgovarajući blok velikih slova, u protivnom će se izvršiti blok "Slučaj Else".

Sub Select_Case_Example () "Unesite vrijednost za promjenljive "Narandžasti" MsgBox "Unijeli ste Narančasti" Slučaj Ostalo MsgBox "Nisam poznavao ovo voće!" Kraj Odaberite Kraj Sub

Primjer 3: Izjava slučaja za provjeru brojeva

U donjem primjeru provjerit ćemo je li broj koji je unijeo korisnik manji ili veći od 5.

Sub Select_Case_Example () "Unesite vrijednost za varijable Num = InputBox (" Unesite bilo koji broj između 1 do 10: ")" Vrednovanje izraza Select Case Num Case Is< 5 MsgBox "Your Number is less than 5" Case Is = 5 MsgBox "Your Number is Equal to 5" Case Is >5 MsgBox "Vaš broj je veći od 5" Kraj Odaberite Kraj podv

Bilješka: Možeš koristiti IS ključna riječ s izjavom slučaja za usporedbu vrijednosti.

Primjer 4: Odaberite Izjavu slučaja da provjerite više uslova unutar jednog slučaja.

U ovom primjeru od korisnika ćemo tražiti da unese bilo koji broj od 1-10. Zatim ćemo provjeriti je li broj paran ili neparan koristeći više uvjeta u iskazu slučaja. Primijetite da sam ovdje upotrijebio “,” (zarez) za usporedbu više uvjeta u jednom slučaju.

Sub Select_Case_Example () "Unesite vrijednost za varijable Num = InputBox (" Unesite bilo koji broj između 1 do 10: ")" Vrednovanje izraza Odaberite Case Num Case 2, 4, 6, 8, 10 MsgBox "Vaš broj je paran." Slučaj 1, 3, 5, 7, 9 MsgBox "Vaš broj je neparan." Slučaj El MsgBox "Vaš broj je izvan raspona." Kraj Odaberite End Sub

Bilješka: Znam da postoje lakše metode za provjeru je li broj paran ili neparan, ali sam ovaj primjer upotrijebio samo za objašnjenje kako možete provjeriti više uvjeta unutar jedne izjave slučaja.

Primjer 5: Iskaz slučaja za provjeru kontinuiranog raspona kao uvjeta.

Ovdje ćemo testirati kontinuirani raspon kao uvjet. Zamolit ćemo korisnika da unese bilo koji broj između 1-10, ako je broj između 1 do 5 (uključujući i 1 i 5), tada će "Slučaj 1 do 5" biti "Tačno", ako je broj koji je unijeo korisnik između 6 i 10 (uključujući i 6 i 10) tada će 'Slučaj 6 do 10' biti 'Tačno', ako su oba prethodna slučaja 'Netačno', tada će se izvršiti 'Slučaj drugi'.

Sub Select_Case_Example () "Unesite vrijednost za varijable Num = InputBox (" Unesite bilo koji broj između 1 do 10: ")" Vrednovanje izraza Odaberite Case Num Case Case 1 to 5 MsgBox "Vaš broj između 1 do 5" Case 6 do 10 MsgBox "Vaš broj između 6 do 10" Slučaj u drugom slučaju MsgBox "Vaš broj je izvan raspona." Kraj Odaberite End Sub

Dakle, ovo je bilo sve o VBA Select Case Statement. Slobodno podijelite svoja razmišljanja o ovoj temi.

O ankit kaul

Ankit je osnivač programa Excel Trick. On je tehnološki štreber koji voli sjediti po cijele dane ispred svoje djevojke (svog računara). : D. Ankit ima snažnu strast za učenje Microsoft Excela. Njegov jedini cilj je pretvoriti vas u "Excel štrebere".

Prilikom stvaranja složenih programa, jedna od ključnih točaka je mogućnost pružanja nekoliko mogućnosti za razvoj događaja. Najjednostavniji i najklasičniji primjer je " Ako ... Onda ... Inače ... Kraj", koji vam omogućuje da odaberete jednu od dvije radnje ovisno o rezultatima provjere nekih vrijednosti. Događa se da kao rezultat takve provjere morate birati između različitih opcija. Jedno od rješenja: dodajte skup". .. Ostalo... ", što donekle komplicira sintaksu programa (lakoća čitanja). Međutim, to je vrlo moćan operator koji otvara velike mogućnosti. Možete saznati više o tome.

Alternativa operateru " Ako ... Kraj"operater služi" Odaberite slučaj"(sa engleskog" Odaberite slučaj"može se prevesti kao" Odabir situacije "), što olakšava percepciju koda" na oko ". A ako" Ako ... Kraj"operater u svakom pogledu" Ostalo"prisiljen je da se iznova i iznova poziva na provjerene vrijednosti (na primjer, izraz je svaki put isti), zatim" Odaberite slučaj"to radi samo jednom, što omogućava potonjem da radi brže na velikim skupovima podataka. Ovaj operater vam omogućava da prikladno postavite program koji se grana od jedne tačke do veliki broj grane. Odnosno, uglavnom se koristi za više uvjeta provjere, kada postoje više od dva provjerena uvjeta.

Struktura izraza "Odabir slučaja".

Pogledajmo kako izgleda generalizirana struktura operatora i shvatimo koja je to ( različiti primjeri privatna upotreba koda bit će navedena na kraju članka):

Odaberite slučaj [Provjerena vrijednost] Slučaj [Određena vrijednost] [Neka radnja] Slučaj Ostalo [Neka radnja X] Kraj Odaberite

Kao komad [Značenje] možete umetnuti bilo koju varijablu ili svojstvo čiju vrijednost možete provjeriti. Također možete provjeriti vrijednost određene ćelije. U ovom slučaju možete raditi ne samo s brojevima, već i s tekstovima. Pa čak i s logičkim vrijednostima TAČNO / NETAČNO("Istina" i "Laž"), za koje ne znaju svi.

[Posebno značenje] je ono sa čime se upoređuje [Provjerena vrijednost] ... I, ako jedno zadovoljava drugo, onda je ispunjeno [Neke radnje] ... Za blok postoji nekoliko mogućnosti snimanja [Posebno značenje] ... Za tekstualne i numeričke vrijednosti možete napisati različite vrijednosti odvojene zarezima:

Slučaj 3, 4, 5, "da", "ne"

Možete izabrati raspone za brojeve:

Slučaj 3 do 10 "Od 3 do 10, uključujući 3 i 10 sami.

Također za brojeve možete koristiti operator logičkog poređenja zajedno s česticom " Is":

Slučaj je< 2 "Меньше 2, НЕ включая 2 Case Is = 3 "Равно 3-м. Избыточная запись, достаточно Case 3 Case Is >= 4 "Više od ili jednako 4 slučaja<>0 "Nije jednako nuli

Također je dopušteno koristiti logičke operatore, koji će omogućiti da se osiguraju najsloženiji slučajevi i da se izvrše paralelna poređenja s drugim varijablama. Pored operatera " Or", Koji se zamjenjuje običnim zarezom.

Slučaj ... I ... Slučaj ne ...

[Neke radnje] može biti apsolutno bilo šta. Ako ga preskočite, tada će u ovom slučaju program biti neaktivan. " Slučaj [Posebno značenje] »Zajedno sa dijelom [Neke radnje] dodajte jedan blok:

Slučaj [konkretno značenje] [neka radnja]

Može postojati bilo koji broj takvih blokova, koji se uklapaju u maksimalnu veličinu postupka (ne bi trebao težiti više od 64 kilobajta). Dobro je znati da VBA traži utakmicu [Specifična vrijednost] i [Provjerena vrijednost] duž blokova odozgo prema dolje. To jest, možete imati dva bloka sa istim " Slučaj", ali će se izvršiti samo onaj koji je program ranije pronašao prilikom pregledavanja koda odozgo prema dolje.

Drugi slučaj- ovo su svi drugi slučajevi koji nisu odgovarali ni jednom drugom [Posebno značenje] u svim blokovima operatera " Odaberite slučaj". Ako blokira" Drugi slučaj"nedostaje i nije se pojavio drugi blok, tada program čini logičko" ništa ". Drugi slučaj treba biti posljednji provjereni slučaj među svim kontrolnim blokovima u izrazu. Nakon njega ne bi trebalo biti drugih blokova, u protivnom ćemo dobiti sintaksnu grešku " Slučaj bez Select Case".

Na kraju operatora mora postojati " Kraj Odaberite", koja služi kao" tačka "u operatorovoj" rečenici ".

Primjeri korištenja.

Pogledajmo nekoliko primjera korištenja koda i počnimo s najjednostavnijim. U prvom primjeru prikazuje se poruka ovisno o vrijednosti X.

Sub SelectCase_example_1 () Dim X As Long X = 1 "Možete promijeniti ovaj broj i vidjeti šta se događa. Odaberite Case X Case 1 MsgBox" One "Case 2 MsgBox" Two "Case 3 MsgBox" Three "Case Else MsgBox" Nešto je odabrano zatim drugi "End Select End Sub

Drugi primjer prikazuje neku vrstu zapisa provjerene vrijednosti. Prikazuje se druga poruka ovisno o broju listova u makro knjizi. Imajte na umu da ako u knjizi ima 7 listova, onda “ Slučaj 7", Iako je uslov" Slučaj 5 do 12”Takođe odgovara, ali stoji kasnije.

Sub SelectCase_example_2 () "Unesimo varijablu i prebrojimo broj listova u trenutnoj knjizi: Dim X As Long X = ThisWorkbook.Sheets.Count Select Case X" Ovisno o broju listova u knjizi, prikazat ćemo poruku . Slučaj 1 "Ako 1 list, onda ... MsgBox" Jedan list u knjizi "Slučaj 2, 3, 4" Ako postoje 2 ili 3 ili 4 lista MsgBox "Nekoliko listova u knjizi" Slučaj 7 "Ako postoji 7 listovi MsgBox "Lijep broj listova" Slučaj 5 do 12 "Ako su listovi od 5 do 12 MsgBox" Skoro brošura "Slučaj je> = 14" Ako su listovi veći ili jednaki 14 MsgBox "Listovi kao u foliji" Slučaj Ostali "Svi drugi slučajevi, naime 13 MsgBox" Prokleta tuceta listova "Kraj Odaberite Kraj pod

Treći primjer logički orijentisan ISTINITO ili FALSE... Provjerava je li posljednji list u trenutnoj makro radnoj knjizi vidljiv ili skriven. Dvotačke se mogu koristiti za zamjenu prijeloma retka za čistiji kôd.

Sub SelectCase_example_3 () "Unosimo varijablu i vezujemo je za posljednji list u knjizi: Zatamni shtX kao radni list: Postavi shtX = ThisWorkbook.Sheets (ThisWorkbook.Sheets.Count) Odaberite Case shtX.Visible" Provjerite je li list skriven ili ne Slučaj Tačno: MsgBox "Posljednji list u knjizi je dostupan" "Ako je posljednji list vidljiv Case False: MsgBox" Posljednji list u knjizi je skriven "" Ako je zadnji list skriven End Odaberite End Sub

Četvrti primjer pokazuje da " Slučaj»Mogu se voditi i drugim varijablama. V ovaj slučaj provjerit ćemo jednakost tri varijable pomoću logički operator « And»:

Sub SelectCase_example_4 () "Uvedimo nekoliko varijabli: Dim X%, Y%, Z%" Izjednačimo sve s trojkom: X = 3: Y = 3: Z = 3 Odaberi slučaj Tačno "Provjerimo jednakost svih varijabli Slučaj Z = X I Y = X: MsgBox "Svi su jednaki" "Ako su svi jednaki Drugi slučaj: MsgBox" Neko je drugačiji "" Ako je bar neko drugačiji Kraj Kraj Podmeni

Peti primjer pokazuje kako, odvojeno zarezima u provjerenoj vrijednosti za " Slučaj»Možete navesti čitav skup brojeva. Recimo da postoji neka funkcija i provjeravamo može li se naš broj koristiti u ovoj funkciji. Konvencijom smo zadovoljni brojevima u rasponu od 5 (ne uključujući 5) do minus beskonačnosti, od 12 do 15 uključujući krajeve i od 20 (uključujući 20) do plus beskonačnosti.

Sub SelectCase_example_5 () "Unesimo varijablu i ručno joj dajmo vrijednost Dim X As Double X = InputBox (" Unesite numeričku vrijednost varijable X ") Odaberite Case X" Provjerimo je li naša vrijednost Case prikladna za neku imaginarnu funkciju< 5, Is >= 20, 12 do 15 "Raspon valjanih vrijednosti MsgBox" Važeća vrijednost za neku funkciju "Drugačije" Nevažeće vrijednosti MsgBox "Vrijednost se ne može koristiti u nekoj funkciji" Kraj Odaberite kraj Pod

Sumirajući red, napominjem da je operator „ Odaberite slučaj"Struktura je prilično jednostavna i laka za upotrebu. Manje je fleksibilan od " Ako… Kraj», Ako je u toku provjera potrebno promijeniti provjerenu vrijednost, ali ona značajno pobjeđuje kada se izvrše različite provjere istog izraza. Za ono što je zapravo stvoreno.

Hvala na pažnji.

Članak sa primjerima sastavio je Roman "Rioran" Gavrani za www.site