Select Caseステートメントを使って、条件分岐をスマートに記述しよう

こんにちはmasalifeです。

今回は条件分岐の処理に使用するSelect Caseステートメントを紹介します。

条件分岐といえばIfステートメントを思い浮かべる方が多いと思いますが、

IfステートメントよりSelect Caseステートメントを使用したほうがコードがスマートになります。

Select Caseステートメントの構文

【構文】

条件式には数値式、文字列式を記述します。

まとめると次のようになります。

条件記述方法POINT
100ならCase 100Caseの後に条件を記述する
1以上ならCase Is >=1比較演算子を用いる場合はCase Isと記述する
1以上100以下ならCase 1 To 100〇以上▲以下とする場合はCase 〇 To ▲と記述する
1または100ならCase 1, 100条件が複数ある場合は , (カンマ)で区切って記述する
masalifeならCase “masalife”文字列式の場合は ” “(ダブルクォーテーション)で囲う

上記以外にも条件式には変数を用いることもできます。

実際にはユーザーが選択・入力した値を変数に入れて、条件を分岐、処理させる

といった使い方がメインとなるので、次にその一例を紹介します。

・比較演算子を用いる場合のCase Is のIsをIsキーワードと呼ぶ。

・範囲を条件にする場合のCase ToのToをToキーワードと呼ぶ

変数を条件式にした簡単なプログラムを作成する

今日の天気を入力し、天気によって何をするかのメッセージを出すプログラムを作成します。

【作成するプログラム】

今日の天気を選択してボタンをクリックすると、選択した天気に対応するメッセージを出すプログラムを作成します。

メッセージは次のとおりです。

天気メッセージ
天気がいいので遊園地に行く
今にも雨が降りそうなので水族館に行く
雨または雪今日は家で映画を観る

【コードを記述】

「何する?」ボタンのクリック時イベントに以下のコードを記述します。

*天気を選択していない場合(Null値)の対応はしていないため、必ず天気を選択してからボタンをクリックしてください。

ユーザーが選択したコンボボックスの値を変数tenkiに代入して、変数tenkiを条件式としています。

コードがすっきりして見やすいのではないでしょうか。

この基本形を覚えてしまえば、様々な状況に対応したプログラムを作成できます。

さいごに

条件分岐が多くなればなるほど、Select Caseの強みが発揮されます。

ぜひ使ってみてください。

ただし、経験からの注意点として、

複数人でシステムを開発している場合は、周りの人たちがSelect Caseを理解しているかを確認してから使用するのがいいと思います。

せっかく書いたコードが、

「分からん。Ifでええやん。」

といった意見で無くならないように・・・

最後まで読んでいただきありがとうございました。

>ちょっとした悩みを解決        

ちょっとした悩みを解決        



「こういう内容を記事に残してほしい」「これってどうやるの」等、意見・要望があればご連絡ください。
ちょっとでもお役に立てるブログにしていきたいなと思っております。
よろしくお願いいたします。