ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

式の値に応じて多分岐を行う(Switch 関数)

   

Switch 関数 の使い方


Switch 関数は、「式・値」を対にして指定して、左から順に評価し、最初に真(True)に評価された値を返します。

【書式】

result = Switch ( expr1, value1 [, expr2, value2, … , exprn, valuen ] )


引数・戻り値

  • expr1,expr2 … exprn  ・・・  評価対象の式を指定します。
  • value1,value2 … valuen  ・・・  対応する式( expr1, expr2exprn )が真(True)の場合に返す式・値を指定します。
  • result  ・・・  引数( expr1, expr2exprn )で最初に、真(True)と評価された式に対応する Value


Switch 関数は、左から右の順で式を評価し、最初に真(True)と評価された式に対応した値(式)が返されますが、評価はすべての式に対して行われます。このため、評価すると 0 による除算エラーが発生する式が1つでも含まれている場合は、エラーとなります。

真(True)と評価された最初の式に、Null 値が関連付けられている場合、Null 値を返します。
また、すべての式が真(True)と評価されない場合も Null 値を返します。



Switch 関数 の使用例

サンプルVBAソース


実行結果(「2」を入力)

Switch 関数 例01

Switch 関数 例02

実行結果(「abc」を入力)

Switch 関数 例03

Switch 関数 例04




 - VBA基本 , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

Volatile メソッド
ユーザー定義関数:自動再計算関数の設定(Volatile メソッド)

ユーザー定義関数で、自動再計算を行うかどうかを設定する ワークシート上で使用する …

RSet 関数・LSet 関数 例1
文字列:文字列変数の値を右詰めまたは左詰めにする(RSet ステートメント・LSet ステートメント)

RSet ステートメント・LSet ステートメント 【書式】 < RSet ステ …

文字列:文字列の指定した位置から指定文字数取得(Mid 関数,MidB 関数)

Mid 関数・MidB 関数 の使い方 【書式】 result_mid = Mi …

文字列:文字列の一部を別の文字列で置換(Replace 関数)

Replace 関数の使い方 【書式】 result = Replace ( s …

Array 関数(1)
Array 関数(バリアント型の配列を作成)

Array 関数の使い方 【書式】 myArray = Array ( elem …

TextToColumns メソッド
セルのデータを区切り文字で複数のセルに分割する(TextToColumns メソッド)

TextToColumns メソッド TextToColumns メソッドを使用 …

日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )

DateValue 関数(文字列から日付データを取得) 【書式】 date_va …

オブジェクトの書式をクリアする(ClearFormats メソッド)

ClearFormats メソッド 対象となるオブジェクトの書式(スタイル)を初 …

VBAの変数宣言

VBAの変数宣言について 変数を暗黙的に宣言する エクセル VBA の場合、明示 …

データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)

VarType 関数 の使い方 VarType 関数は、引数に、データ型を調べた …