VBAのSwitch関数について解説しています。
Switch関数は、VBA関数の中で制御・入出力関数に分類される関数です。
Switch関数は、式のリストを評価し、リストの中で真 (True) となる最初の式に関連付けられたバリアント型 (Variant) の値または式を返します。
構文 | Switch(expr-1, value-1[, expr-2, value-2 ... [, expr-n,value-n]]) | |
---|---|---|
引数 | 省略 | 説明 |
expr | × | 評価対象となるバリアント型 (Variant) の式を指定します。 |
value | × | 対応する式が真 (True) のときに返す値または式を指定します。 |
Switch 関数の引数リストでは、式と値を対にして指定します。式は左から右の順序で評価され、最初に真 (True) に評価された値が返されます。式と値が正しく対になっていなければ、実行時エラーが発生します。たとえば、引数 expr-1 が真 (True) の場合、引数 value-1 が返されます。引数 expr-1 が偽 (False) で、引数 expr-2 が真 (True) の場合には、引数 value-2 が返されます。
以下の場合は、Null 値が返されます。
・ いずれの式も真 (True) と評価されない場合。
・ 真 (True) と評価された最初の式に Null 値が関連付けられている場合。
Switch 関数では、リスト内の式のいずれか 1 つだけが返されますが、評価はリスト内のすべての式に対して行われます。このため、Switch 関数を使うと、予期しない結果が起きることがあります。たとえば、評価すると 0 による除算エラーが発生する式が 1 つでも含まれていれば、エラーになります。
次の例は、Switch 関数を使って、指定された都市で使用されている言語を返します。
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "ロンドン", "英語", CityName _
= "ローマ", "イタリア語", CityName = "パリ", "フランス語")
End Function
※ドラッグ(スワイプ)すると全体を確認できます。
関数名 | 内容 |
---|---|
Choose | 数値で指定した式の値を返します。 |
IIf | 式の結果により2つの引数のうち1つを返します。 |
Input | ファイルから指定した文字数の文字列を読みこんで返します。 |
InputB | ファイルから指定したバイト数のデータを読み込んで返します。 |
InputBox | ダイアログボックスにメッセージを表示しテキストボックスに入力した値を返します。 |
MsgBox | ダイアログボックスにメッセージを表示します。 |
Partition | 指定した数値の範囲が属する文字列を返します。 |
Spc | 指定した数のスペースを挿入します。 |
Switch | 条件式を評価し、真(True)の場合に式を返します。 |
TypeName | 変数に関する情報を返します。 |
↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。
VBAのIE操作入門↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。
こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。