Caseステートメントは条件によって処理を分ける数が多い場合に使われます。サイコロの目は1から6までありますが、1から6までの出た目でそれぞれ処理が違う場合などです。Caseステートメントは複数の条件により処理を分岐させたい場合に使用します。条件により処理を分岐させる構文としてIf文もありますが、If文は分岐の数が少ない場合に使用します。Caseステートメントが使われます。if文についてはこちらの記事で詳しく解説しているので、詳しく知りたい方はぜひ確認してください。Caseステートメントは以下のように記述します。Select変数が条件式と合致するか条件式がTrueの場合に、それ以降の処理を実行します。条件式がFalseの場合は次の条件式に移ります。Else以降の処理を実行します。それではサンプルコードで確認していきましょう。Sub実行結果:複数条件(Or)を指定する場合Caseの条件式を複数指定することができます。複数の条件は以下のように「,」(カンマ)で区切ります。条件式のどれかを満たすと、それ以降の処理が実行されます。サンプルコードで確認していきましょう。Sub実行結果:Toで範囲指定をする場合Caseの条件式は以下のようにToキーワードを使って範囲を指定することもできます。上限値サンプルコードで確認していきましょう。Sub実行結果:Isで比較条件を指定する場合Isキーワードを使って比較条件を指定することもできます。値サンプルコードで確認していきましょう。Sub実行結果:Like演算子を使ったあいまい条件の使い方(ワイルドカード)以下のようにLike演算子を使って部分的に合致した場合の条件分岐を記述することができます。Select条件式には「*」(アスタリスク)などのワイルドカードを使います。ワイルドカードには以下のようなパターンを指定できます。リストcharlistに指定した文字以外の任意の1文字サンプルコードで確認しましょう。Sub実行結果:このサンプルコードでは、String型変数strをLike演算子を使ってそれぞれの場合で比較しています。ワイルドカードを使った文字列”中*”とstrのパターンが一致しています。Like演算子の使い方については、こちらで詳しく解説していますので、ぜひ参考にしてください。caseステートメントについて複数条件で分岐する方法についてお伝えしてきました。Or条件の場合は「,」記号を使ったり、範囲を指定する場合はToキーワードを使用します。文字列のパターンに合っているかどうかで条件分岐する場合はLike演算子を使います。そこで、Andでの複数条件で条件分岐する方法がないか疑問に思かもしれません。そのような記述はありません。1変数の数値の場合はToキーワードを使っての範囲指定で十分なので、Andで複数条件を指定する必要はありません。1変数の文字の場合はLike演算子でワイルドカード文字などを使ってパターンマッチングすればいいので、Andで複数条件を指定する必要はありません。Caseステートメントではできません。複数の変数で条件分岐したい場合ならIf文を使うようにしましょう。If文でのAndやOrなどの論理演算子の使い方については、こちらで詳しく解説していますので、ぜひ参考にしてください。2019年9月26日VBA以外の選択肢も今回解説したVBAの条件分岐が行えると様々な業務が効率化できる大切なスキルではありますが、このままVBAを学び続けるなら親和性のあるプログラミング学習に挑戦してみることもおすすめです。VBAは社内出世など、会社にずっと属していく人のみに必要AIの発達によってVBAで条件を組まなくても良くなる可能性も人材不足かつ、市場か伸びているのはプログラミング、スキル次第で人生に選択肢が増えるこれらの理由から、せっかくVBAというスキルを身につけようとしているなら親和性のあるプログラミングの方が、あなたの人生に選択肢や可能性を増やすのでは?と思います。VBAでも精一杯なのにプログラミング?難しそう。そんな心配をしているあなたでも大丈夫です。侍エンジニア塾ではあなたの目標や性格を踏まえて適切な講師を配属させていただき、マンツーマンで指導していくため、着実にスキルアップしていくことができます。あなたの目標に対して現在のスキルや興味のある分野から最適な学習カリキュラムを作るフルオーダーメイドカリキュラムを作成いたします。これによりあなたの興味関心と授業のカリキュラムが完全にあった状態で学習できるため、確実に未来に繋がる実感を持ちながら学習ができます。あなたの興味や関心からおすすめの言語を判定するプログラミング学習診断アプリを受けてみてください。質問に答えていくだけで、最適な言語やスキルと学習期間を提案いたします。プログラミング言語診断を受けるVBAの将来性VBAのスキルを学んで業務を効率化したいこのように思っている人は多いでしょう。VBAの用途はさまざまで、VBAのスキルがあれば転職できるのでは?業務効率化のスキルは需要が高そうだからなどが上げられます。確かに、業務効率化はどこの企業も目指していて、需要が高いように見えます。VBAを扱えることが強みになるかといわれると、すこし疑問があります。VBAは基本的にエクセル上でしか使用することができません。最近では社内書式をスプレッドシートで管理している企業も増えており、今後エクセル自体の需要が少なくなってしまう可能性も考えられます。なってしまうと、VBAを習得しても活躍の場が限られてしまいますよね。考えると将来的にVBAの需要はあまり高くないといえます。VBAを学んでいる人はどうすればいいのでしょう。VBAの将来性や今後の対策などをこちらの記事でまとめているのでぜひご確認ください。Caseステートメントについて説明しました。Caseステートメントは条件によって分岐が多い場合に使うと便利です。使いこなすことができるように、この記事を何度も参考にして下さいね!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。熊本在住のフリープログラマ兼ライターです。C/C++/C#、Java、Python、HTML/CSS、PHPを使ってプログラミングをしています。専門は画像処理で最近は機械学習、ディープラーニングにはまっています。幅広くやってきた経験を活かしてポイントをわかりやすくお伝えしようと思います。お問合せはこちらでも受け付けています。