Creative Saplings

eval (ez_write_tag ([[468,60], „sourcedaddy_com-box-3“, „ezslot_1“, 102, „0“, „0“])); Použití Select Case Statement

10 ledna, 2021
No Comments

MS-Excel / General Formatting

Provádění více testů pomocí If … ElseIf je praktická technika – je to nástroj VBA, na který se docela často snažíte. S rostoucím počtem testů, které potřebujete provést, se však rychle stává nepraktickým. Pro dva nebo tři testy je to v pořádku, ale o nic víc to logiku ztíží.

Pro tyto situace je lepší volbou prohlášení Select VBA. Myšlenka je, že na začátku poskytnete logický výraz a poté uvedete řadu možných výsledků. Foreach possible result-called a case-you provide one or more VBA commands to executeshould the case ukázať jako pravdivé. Zde je syntaxe:

Select Case TestExpression Case FirstCaseList Case SecondCaseList <etc> Case Else End Select

TestExpression
Tento výraz je vyhodnocen na začátku struktury. musí vrátit hodnotu (logickou, číselnou, řetězcovou atd.).
CaseList
Seznam jednoho nebo více možných výsledků pro TestExpression. Tyto výsledky jsou hodnoty nebo výrazy oddělené čárkami. VBA zkoumá každý prvek v seznam a zjistěte, zda odpovídá TestExpression. Výrazy mohou mít kteroukoli z následujících forem:

ExpressionExpression To ExpressionIs LogicalOperator Expression

Klíčové slovo To definuje rozsah hodnot (například 1 až 10) Klíčové slovo Is definuje otevřený rozsah hodnot (například Is > = 100).
Příkazy
Toto jsou příkazy, které VBA spustí, pokud je některá část přidružený CaseList odpovídá TestExpression. VBA spustí volitelné ElseStatements, pokud žádný CaseList neobsahuje shodu pro TestExpression.

Poznámka: Pokud více než jeden CaseList obsahuje prvek, který odpovídá TestExpression, VBA spouští pouze příkazy spojené s CaseList, které se zobrazují jako první ve struktuře Select Case.

Výpis ukazuje, jak byste pomocí Select Case zpracovali problém s argumentem Frequency.

Procedura, která používá Vyberte případ k otestování více hodnot Příklad vybraného případu: Převedení skóre testu na stupně písmen

Abychom vám pomohli získat lepší pocit z příkazu Vybrat případ, podívejme se na další příklad, který lépe předvede jedinečné talenty tohoto mocného struktura. Předpokládejme, že chcete napsat postup, který převede hrubé skóre testu na známku podle následující tabulky:

Surové skóre Třída písmen
90 a více A
mezi 80 a 89 B
mezi 70 a 79 C
mezi 60 a 69 D
méně než 60 F

Výpis zobrazuje proceduru LetterGrade, která k provedení převodu používá příkaz Select Case.

Argument rawScore je celočíselná hodnota mezi 0 a 100. Struktura Select Case nejprve zkontroluje, zda je rawScore záporné, a pokud ano, vrátí funkci chybovou zprávu. Následující příkaz Case zkontroluje, zda je skóre menší než 60, a funkce vrátí známku „F“, pokud je. Následující příkaz Case hledá skóre, které je menší než 70. Pokud se dostaneme tak daleko, už víme (díky předchozímu prohlášení Case), že skóre je minimálně 60. Proto tento případ opravdu kontroluje, zda skóre není mezi 60 a 70 (včetně 60, ale bez 70). Pokud ano, vrátí se písmeno „D“. Zbytek případových prohlášení probíhá stejným způsobem. Případ Elsechecks pro skóre větší než 100 a vrátí jinou chybovou zprávu, pokud je.

Další příklad: Zkrocení funkce RGB

Funkci VBA RGB (červená, zelená, modrá) můžete použít kdykoli potřebujete určit barvu vlastnosti. Každý ze tří pojmenovaných argumentů (červený, zelený a modrý) jsou celá čísla mezi 0 a 255, která určují, kolik barvy každé složky je smícháno do konečné barvy. Například v červené složce 0 znamená, že není přítomna žádná červená a 255 znamená, že je přítomna čistá červená. Pokud jsou všechny tři hodnoty stejné, získáte odstín šedé.

Zde je několik ukázkových hodnot pro každou komponentu, která vytváří společné barvy:

Červená Modrá Zelená Výsledek
0 0 0 černá
0 0 255 modrá
0 255 0 zelená
0 255 255 azurová
255 0 0 červená
255 0 255 Margenta
255 255 0 Žlutá
255 255 255 Bílá

Spíše než si tyto kombinace zapamatovat, necháme však pracovat s VBA a Select Case, aby byl výběr barev snazší. zobrazuje funkci VBAColor, která umožňuje používat jména (například „červená“ nebo „modrá“) namísto kryptického znecitlivění Kombinace pro nastavení 16 nejběžnějších barev.

Funkce, která přijímá název barvy jako řetězec a vrací odpovídající hodnotu RGB

VBAColor přebírá jediný argument colorName, což je název barvy, kterou chcete chci pracovat s. Všimněte si, jak příkaz Select Case masíruje argument, aby se zabránilo chybám:

Select Case LCase(Trim(colorName))

Funkce Oříznout odstraní na začátku všechny nadbytečné mezery a konec argumentu a funkce LCase převede colorName na malá písmena. Tím je zajištěno, že funkce nerozlišuje velká a malá písmena, což znamená, že nezáleží na tom, zda posíláte černé, ČERNÉ nebo Černé: Funkce bude i nadále fungovat.

Zbytek funkce používá příkazy Case ke kontrole různé názvy barev a vrátit příslušnou hodnotu RGB. K vytvoření víru VBAColora můžete použít postup ColorTester. Tento postup pouze naformátuje barvu písma aktuálně vybrané buňky listu.

Poznámka: VBA také definuje osm barevných konstant, které můžete použít, když potřebujete pouze základní barvy: vbBlack, vbBlue, vbCyan, vbGreen, vbMagenta, vbRed, vbWhite a vbYellow.

Articles
Previous Post

Bývalý vs. druhý: Jaký je rozdíl?

Next Post

Jedná se o 15 nejrychlejších plemen psů na světě

Napsat komentář Zrušit odpověď na komentář

Nejnovější příspěvky

  • Nejlepší fotografické školy na světě, 2020
  • Sovereign Citizens Take their Anti-Government Philosophy to the Roads
  • Průvodce náklady na opravy Stucco
  • Muckrakers (Čeština)
  • Precision Oncology (Čeština)

Archivy

  • Únor 2021
  • Leden 2021
  • Prosinec 2020
  • Listopad 2020
  • Říjen 2020
  • Září 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.