VBAでCase文はif文よりも処理時間が長い

複数の分岐判定でCase文、if文、Elseif文を使った時の処理時間を計測した。
結論はCase文>if文≒Elseif文の順に処理時間が長い。

1.背景
  バタイユゲーム支援ツール強化版の高速化の為に複数分岐判定を見直せないか検討した。
  具体的には、今まではif文を使っていたがCase文やElseif文に変えて処理時間を測定した。

2.測定結果
(1)処理時間を計測したEXCELシート(今までと同じ)

(2)処理時間
   VBAの処理時間(射撃判定のみ)は次の通り。3項の処理時間(各々10ケ)を合計したもの。
   バタイユゲーム支援ツール強化版の高速化の為にはElseif文を使うことにした。

分岐判定Case文if文Elseif
処理時間(秒)5.775.084.99

3.具体的な変更内容
(1)今まで使っていたif文
 (A)判定文

 (B)測定結果(偶数行のway1の値がVBA処理時間(秒))

 (C)EXCELの結果(今回は射撃判定のみ測定したので、損失や士気判定の有無は影響ない)

(2)Case文
 (A)判定文

 (B)測定結果(偶数行のway1の値がVBA処理時間(秒))

 (C)EXCELの結果(今回は射撃判定のみ測定したので、損失や士気判定の有無は影響ない)

(3)Elseif文
 (A)判定文

 (B)測定結果(偶数行のway1の値がVBA処理時間(秒))

 (C)EXCELの結果(今回は射撃判定のみ測定したので、損失や士気判定の有無は影響ない)

(4)時間測定の箇所
   pythonプログラムでVBAマクロ(射撃判定)の前後に時間取得(枠内の箇所)を追加した。

4.参考資料
  下記のWEBページにお世話になりました。ありがとうございます。
 ・【Excel VBA】If Elseとは違う条件式(Select Case)について
 ・【Excel VBA入門】Select Case文の使い方。複数条件をスッキリ書く!

<個人的な感想>
Case文より単純なif(elseif)文の方が処理時間は少しだけ早い。
プログラムの分かり易さから言えばCase文の方が良いが・・・。