Creative Saplings

eval(ez_write_tag([[468,60]、 “sourcedaddy_com-box-3″、 “ezslot_1″、102、 “0”、 “0”]));使用SelectCaseステートメント

1月 10, 2021
No Comments

MS-Excel /一般的なフォーマット

If … ElseIfを使用して複数のテストを実行することは、便利な手法です。これは、頻繁に使用するVBAツールです。ただし、作成する必要のあるテストの数が増えると、すぐに扱いにくくなります。 2つまたは3つのテストで問題ありませんが、それを超えるとロジックを追跡するのが難しくなります。

このような状況では、VBAのSelectCaseステートメントの方が適しています。アイデアは、最初に論理式を提供してから、一連の可能な結果をリストすることです。ケースと呼ばれる可能性のある結果ごとに、ケースが真であることが証明された場合に実行する1つ以上のVBAステートメントを指定します。構文は次のとおりです。

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

TestExpression
この式は、構造体の先頭で評価されます。値(論理、数値、文字列など)を返す必要があります。
CaseList
TestExpressionの1つ以上の可能な結果のリスト。これらの結果は、コンマで区切られた値または式です。VBAは、の各要素を調べます。リストを使用して、TestExpressionに一致するかどうかを確認します。式は次の形式のいずれかを取ることができます。

ExpressionExpression To ExpressionIs LogicalOperator Expression

Toキーワードは、値の範囲(1〜10など)を定義します。 。Isキーワードは、値の制限のない範囲を定義します(たとえば、Is > = 100)。
ステートメント
これらは、VBAが関連するCaseListはTestExpressionと一致します。TestExpressionと一致するCaseListが含まれていない場合、VBAはオプションのElseStatementsを実行します。

注:複数のCaseListに一致する要素が含まれている場合TestExpression、VBAは、SelectCase構造で最初に表示されるCaseListに関連付けられたステートメントのみを実行します。

リストは、SelectCaseを使用してFrequency引数の問題を処理する方法を示しています。

を使用するプロシージャ複数の値をテストするためのケースの選択ケースの例:テストスコアの文字の成績への変換

ケースの選択ステートメントをよりよく理解するために、この強力な独自の才能をよりよく示す別の例を見てみましょう。構造。次の表に従って、生のテストスコアを文字グレードに変換するプロシージャを作成するとします。

生のスコア レターグレード
90以上 A
80〜89 B
70〜79 C
60〜69 D
60未満 F

リストは、SelectCaseステートメントを使用して変換を行うLetterGradeプロシージャを示しています。

rawScore引数は、0〜100の整数値です。SelectCase構造は、最初にrawScoreが負であるかどうかを確認し、負の場合、関数はエラーメッセージを返します。次のCaseステートメントは、スコアが60未満であるかどうかを確認し、60未満の場合、関数は文字グレード「F」を返します。次のCaseステートメントは70未満のスコアを探します。これまでのところ、スコアが少なくとも60であることは(前のCaseステートメントのおかげで)すでにわかっています。したがって、このケースは実際にスコアが60であるかどうかを確認しています。 60〜70(60を含むが、70は含まない)。その場合、文字グレード「D」が返されます。残りのCaseステートメントも同じように進行します。 Case Elseは、スコアが100より大きいかどうかをチェックし、そうである場合は別のエラーメッセージを返します。

別の例:RGB関数を使いこなす

RGB(赤、緑、青)VBA関数はいつでも使用できます。プロパティの色を指定します。 3つの名前付き引数(赤、緑、青)はそれぞれ、0〜255の整数であり、各コンポーネントの色のどれだけが最終的な色に混合されるかを決定します。たとえば、赤のコンポーネントでは、0は赤が存在しないことを意味し、255は純粋な赤が存在することを意味します。 3つの値がすべて同じである場合、灰色の陰になります。

共通の色を生成する各コンポーネントのサンプル値は次のとおりです。

赤 青 緑 結果
0 0 0 黒
0 0 255 青
0 255 0 緑
0 255 255 シアン
255 0 0 赤
255 0 255 マルジェンタ
255 255 0 黄色
255 255 255 白

ただし、これらの組み合わせを記憶するのではなく、VBAとSelect Caseを機能させて、色の選択を容易にします。リストは、不可解な無感覚ではなく名前(たとえば、「赤」や「青」)を使用できるVBAColor関数を示しています。最も一般的な16色を設定するための組み合わせ。

色名を文字列として受け取り、対応するRGB値を返す関数

VBAColorは、単一の引数colorNameを取ります。これは、ユーザーの色の名前です。一緒に働きたい。 SelectCaseステートメントがエラーを防ぐために引数をどのようにマッサージするかに注意してください。

Select Case LCase(Trim(colorName))

Trim関数は、先頭の余分なスペースを削除し、引数の終わり、LCase関数はcolorNameを小文字に変換します。これにより、関数で大文字と小文字が区別されなくなります。つまり、「黒、黒、黒のいずれを送信してもかまいません。関数は引き続き機能します。

関数の残りの部分では、Caseステートメントを使用してさまざまな色の名前と適切なRGB値を返します。ColorTesterプロシージャを使用してVBAColoraを回転させることができます。このプロシージャは、現在選択されているワークシートセルのフォントの色をフォーマットするだけです。

注:VBAは、8つの色定数も定義します。基本的な色(vbBlack、vbBlue、vbCyan、vbGreen、vbMagenta、vbRed、vbWhite、vbYellow)が必要な場合に使用できます。

Articles
Previous Post

前者と後者:違いは何ですか?

Next Post

これらは世界で最も速い15の犬種です

コメントを残す コメントをキャンセル

最近の投稿

  • 世界で最高の写真学校、2020年
  • ソブリン市民が反政府哲学を道路に持ち込む
  • スタッコ修理費用ガイド
  • マックレーカー
  • Precision Oncology (日本語)

アーカイブ

  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 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.