VB6・VBA関数メモ:Switch関数

Switch関数についてメモしておきます。
複数の条件の中から1つを選択する場合に使用します。

Select Case文を1行で書けるような感じでしょうが、
個人的にはSelect Case文で書いた方がコードのメンテはしやすいんじゃないかと思います。


概要

Switch(ParamArray VarExpr() As Variant)
機能 複数の評価式から最初にTrueとなる評価式の値を返す
引数 VarExpr() 奇数番目の引数に評価式を指定
偶数番目の引数に返す値を指定
カンマ区切りで複数指定可能
Variant型の引数リスト
戻り値 引数リストの指定インデックスの値 Variant型


使用例

説明 記述例 出力
2番目の評価式の値を返す Switch(False, "ab", True, "cd", False, "ef") "cd"
左から順番に
最初にTrueとなった評価式の値を返す
Switch(False, "ab", True, "cd", True, "ef") "cd"


動作検証

説明 記述例 出力
全ての評価式がFalseの場合は
Nullを返す
Switch(False, "ab", False, "cd", False, "ef") Null
インデックスに関わらず
全ての引数リストは計算されるため
戻り値として返さない評価式の値でも
エラーとなる
Switch(False, "ab", False, 1/0, True, "ef") エラー
引数リストの数が正しくない場合
エラーとなる
Switch(False, "ab", True, "cd", False) エラー


コメント
コメントする








    
この記事のトラックバックURL
トラックバック