Kaip naudoti pasirinkimo atvejo struktūrą „Excel 2016 VBA“.

Struktūra „Select Case“ yra naudinga VBA struktūra priimant sprendimus, susijusius su trimis ar daugiau „Excel 2016“ parinkčių (nors ji taip pat veikia su dviem parinktimis, suteikdama alternatyvą „If-Then-Else“ struktūrai).

A Select Case pavyzdys

Šiame pavyzdyje parodyta, kaip naudoti struktūrą Select Case:

Sub ShowDiscount3()
  Dim Kiekis Kol kas
  Nedidelė nuolaida kaip dviguba
  Kiekis = InputBox („Įveskite kiekį:“)
  Pasirinkite Bylos kiekis
    Atvejis nuo 0 iki 24
      Nuolaida = 0,1
    25–49 atvejis
      Nuolaida = 0,15
    50–74 atvejis
      Nuolaida = 0,2
    Atvejis yra >= 75
      Nuolaida = 0,25
  Pabaigos pasirinkimas
  MsgBox „Nuolaida:“ & Nuolaida
Pabaigos sub

Šiame pavyzdyje vertinamas kintamasis Kiekis. Įprasti patikrinimai atliekami keturiais skirtingais atvejais (0–24, 25–49, 50–74 ir 75 ar daugiau).

Po kiekvieno atvejo teiginio gali būti bet koks teiginių skaičius, ir jie visi yra vykdomi, jei atvejis yra teisingas. Jei naudojate tik vieną teiginį, kaip šiame pavyzdyje, teiginį galite įrašyti toje pačioje eilutėje kaip raktinis žodis Case, prieš kurį rašomas dvitaškis – VBA teiginio skyriklio simbolis. Tai daro kodą kompaktiškesnį ir šiek tiek aiškesnį. Štai kaip rutina atrodo šiuo formatu:

Sub ShowDiscount4 ()
  Dim Kiekis Kol kas
  Nedidelė nuolaida kaip dviguba
  Kiekis = InputBox („Įveskite kiekį:“)
  Pasirinkite Bylos kiekis
    0–24 atvejis: nuolaida = 0,1
    25–49 atvejis: nuolaida = 0,15
    50–74 atvejis: nuolaida = 0,2
    Atvejis >= 75: Nuolaida = 0,25
  Pabaigos pasirinkimas
  MsgBox „Nuolaida:“ & Nuolaida
Pabaigos sub

Kai VBA vykdo struktūrą Select Case, struktūra išjungiama, kai tik VBA randa tikrąjį atvejį ir įvykdo to atvejo teiginius.

Įdėto pasirinkimo atvejo pavyzdys

Kaip parodyta kitame pavyzdyje, galite sudėti Select Case struktūras. Ši tvarka tiria aktyvų langelį ir parodo pranešimą, aprašantį langelio turinį. Atkreipkite dėmesį, kad procedūra turi tris Select Case struktūras ir kiekviena turi savo pabaigos pasirinkimo teiginį:

Papildomas tikrinimo langelis ()
  Pritemdyti pranešimą kaip eilutę
  Pasirinkite Case IsEmpty (ActiveCell)
    Atvejis Tiesa
     Msg = "yra tuščia".
    Kitas atvejis
     Pasirinkite Case ActiveCell.HasFormula
       Atvejis Tiesa
        Msg = "turi formulę"
       Kitas atvejis
        Pasirinkite Case Is Numeric (ActiveCell)
          Atvejis Tiesa
           Msg = "turi numerį"
          Kitas atvejis
           Žinutė = "yra tekstas"
        Pabaigos pasirinkimas
    Pabaigos pasirinkimas
  Pabaigos pasirinkimas
  MsgBox „Cell“ & ActiveCell.Address & „“ & Msg
Pabaigos sub

Logika skamba maždaug taip:

Sužinokite, ar langelis tuščias.

Jei jis nėra tuščias, pažiūrėkite, ar jame yra formulė.

Jei formulės nėra, išsiaiškinkite, ar joje yra skaitinė reikšmė, ar tekstas.

Kai rutina baigiasi, Msg kintamajame yra eilutė, apibūdinanti langelio turinį. „MsgBox“ funkcija rodo tą pranešimą.

Kaip naudoti pasirinkimo atvejo struktūrą „Excel 2016 VBA“.

Pranešimas, rodomas atliekant CheckCell procedūrą.

Galite įterpti „Select Case“ struktūras taip giliai, kiek jums reikia, tačiau įsitikinkite, kad kiekvienas „Select Case“ sakinys turi atitinkamą teiginį „End Select“.

Jei vis dar nesate įsitikinę, kad kodo įtrauka verta pastangų, ankstesnis sąrašas yra geras pavyzdys. Įtraukos tikrai tam, kad būtų aiškūs lizdų lygiai. Pažvelkite į tą pačią procedūrą be jokių įtraukų:

Papildomas tikrinimo langelis ()
Pritemdyti pranešimą kaip eilutę
Pasirinkite Case IsEmpty (ActiveCell)
Atvejis Tiesa
Msg = "yra tuščia".
Kitas atvejis
Pasirinkite Case ActiveCell.HasFormula
Atvejis Tiesa
Msg = "turi formulę"
Kitas atvejis
Pasirinkite Case Is Numeric (ActiveCell)
Atvejis Tiesa
Msg = "turi numerį"
Kitas atvejis
Žinutė = "yra tekstas"
Pabaigos pasirinkimas
Pabaigos pasirinkimas
Pabaigos pasirinkimas
MsgBox „Cell“ & ActiveCell.Address & „“ & Msg
Pabaigos sub

Gana nesuprantama, ar ne?


Kaip neleisti „Microsoft Word“ atidaryti failų tik skaitymo režimu sistemoje „Windows“.

Kaip neleisti „Microsoft Word“ atidaryti failų tik skaitymo režimu sistemoje „Windows“.

Kaip neleisti Microsoft Word atidaryti failų tik skaitymo režimu sistemoje Windows. Microsoft Word atidaro failus tik skaitymo režimu, todėl jų redaguoti neįmanoma? Nesijaudinkite, metodai pateikiami žemiau

Kaip ištaisyti neteisingą Microsoft Word dokumentų spausdinimą

Kaip ištaisyti neteisingą Microsoft Word dokumentų spausdinimą

Kaip ištaisyti klaidas spausdinant neteisingus Microsoft Word dokumentus.Klaidos spausdinant Word dokumentus su pakeistais šriftais, netvarkingomis pastraipomis, trūkstamo teksto ar prarasto turinio yra gana dažnos. Tačiau nereikia

Ištrinkite rašiklio ir paryškinimo piešinius savo „PowerPoint“ skaidrėse

Ištrinkite rašiklio ir paryškinimo piešinius savo „PowerPoint“ skaidrėse

Jei naudodami rašiklį ar žymeklį piešėte ant savo PowerPoint skaidrės pristatymo metu, galite išsaugoti brėžinius kitam pristatymui arba ištrinti juos, kad kitą kartą rodydami pradėtumėte nuo švarių PowerPoint skaidrių. Vykdykite šias instrukcijas, kad ištrintumėte rašiklio ir žymeklio piešinius: Trinti linijas po vieną […]

Stilių bibliotekos turinys „SharePoint 2010“.

Stilių bibliotekos turinys „SharePoint 2010“.

Stilių bibliotekoje yra CSS failų, XSL (Extensible Stylesheet Language) failų ir vaizdų, naudojamų iš anksto nustatytų puslapių puslapiuose, puslapių išdėstymuose ir valdikliuose „SharePoint 2010“. Norėdami rasti CSS failus publikavimo svetainės stilių bibliotekoje: pasirinkite Svetainės veiksmai → Peržiūrėti Visas svetainės turinys. Pasirodo svetainės turinys. Stiliaus biblioteka yra […]

Formatuokite skaičius tūkstančiais ir milijonais „Excel“ ataskaitose

Formatuokite skaičius tūkstančiais ir milijonais „Excel“ ataskaitose

Neužkraukite savo auditorijos milžiniškais skaičiais. Programoje „Microsoft Excel“ galite pagerinti informacijos suvestinių ir ataskaitų skaitomumą formatuodami skaičius, kad jie būtų rodomi tūkstančiais arba milijonais.

Kaip bendrinti ir stebėti „SharePoint“ svetaines

Kaip bendrinti ir stebėti „SharePoint“ svetaines

Sužinokite, kaip naudoti „SharePoints“ socialinių tinklų įrankius, leidžiančius asmenims ir grupėms bendrauti, bendradarbiauti, bendrinti ir prisijungti.

Kaip konvertuoti datas į Juliano formatus programoje „Excel“.

Kaip konvertuoti datas į Juliano formatus programoje „Excel“.

Julijaus datos dažnai naudojamos gamybos aplinkoje kaip laiko žyma ir greita partijos numerio nuoroda. Šio tipo datos kodavimas leidžia mažmenininkams, vartotojams ir paslaugų agentams nustatyti, kada produktas buvo pagamintas, taigi ir produkto amžių. Julijaus datos taip pat naudojamos programavimo, kariuomenės ir astronomijos srityse. Skirtingi […]

Kaip sukurti „Access“ žiniatinklio programą

Kaip sukurti „Access“ žiniatinklio programą

Galite sukurti žiniatinklio programą naudodami „Access 2016“. Taigi, kas vis dėlto yra žiniatinklio programa? Na, žiniatinklis reiškia, kad jis yra internete, o programa yra tik „programos“ santrumpa. Pasirinktinė žiniatinklio programa yra internetinė duomenų bazės programa, pasiekiama iš debesies naudojant naršyklę. Kuriate ir prižiūrite žiniatinklio programą darbalaukio versijoje […]

Greitosios paleidimo juosta „SharePoint 2010“.

Greitosios paleidimo juosta „SharePoint 2010“.

Daugumoje „SharePoint 2010“ puslapių sparčiojo paleidimo juostoje, esančioje kairėje puslapio pusėje, pateikiamas naršymo nuorodų sąrašas. Greitosios paleidimo juostoje rodomos nuorodos į siūlomą svetainės turinį, pvz., sąrašus, bibliotekas, svetaines ir publikavimo puslapius. Greitojo paleidimo juostoje yra dvi labai svarbios nuorodos: Visas svetainės turinys: […]

Ką reiškia „Excel“ sprendimo klaidų pranešimai?

Ką reiškia „Excel“ sprendimo klaidų pranešimai?

Paprastoms problemoms spręsti „Excel“ sprendėjas paprastai greitai suranda optimalias tikslinės funkcijos „Solver“ kintamųjų reikšmes. Tačiau kai kuriais atvejais „Solver“ turi problemų ieškant „Solver“ kintamųjų reikšmių, optimizuojančių tikslo funkciją. Tokiais atvejais „Solver“ paprastai rodo pranešimą arba klaidos pranešimą, kuriame aprašoma arba aptariama problema, kurią […]