ExcelのVBA入門VBAのIf~Then~ElseステートメントエクセルVBAのIf~Then~Elseステートメントについて解説しています。:前の記事こちらは、エクセルVBAのIf~Then~Elseステートメントの解説になります。If文のような条件分岐はエクセルVBAに限らずプログラム言語全般で利用される機能ですので、しっかり覚えましょう。ステートメントとは「命令文」と訳されるようにコンピュータに具体的な動作を指定する最小単位のプログラムです。マクロの挙動を制御する構文や文法を指します。通常は1行で完結する部分を指しますが、If~Thenなど複数行にまたがる部分を意味することもあります。解説エクセルVBAのプログラム制御構文一覧If~Then~ElseステートメントとはIf~Then~Elseステートメントは、If文に設定されている条件式を判定して、その結果が真(True)の場合はThen以降の処理を実行、偽(False)の場合はElse以降の処理を実行するフロー制御ステートメントです。こちらは必須キーワードです。真偽を評価する数式または文字列式を指定します。比較演算子のIs演算子を利用して同じオブジェクト型(Object)であれば真(True)を返し、それ以外の場合は偽(False)を返します。引数conditionの値がNull値の場合は、偽(False)であると判断されます。こちらは省略可能です。If文の省略形(1行で記述)の場合は、必須となりますので、注意が必要です。こちらは省略可能です。引数conditionと同様に真偽を評価する条件式を記述します。こちらは省略可能です。引数condition-nが真(True)の場合に実行される処理になります。こちらは省略可能です。どの条件式に当てはまらない場合に実行される処理になります。解説sampleのSubステートメントには引数の設定はされていません。Dimステートメントを利用して変数aに整数型(Integer)を宣言し「10」を代入します。次にIf文の条件式を確認すると比較演算子を利用して「変数aが5より大きい」場合に真(True)を返す設定にしています。"変数aは5より大きい"」が実行されました。最後はEndステートメントを利用してsampleプロシージャを終了させます。"変数aは5より小さい"」が実行されますのでご確認ください。解説まず、変数a,bにオブジェクト型(Object)を宣言し両方とも「Sheet1シート」を参照しています。次にIf文の条件式を確認するとIs演算子を利用してオブジェクト変数a,bが同じオブジェクトの場合に真(True)を返す設定にしています。"オブジェクト変数a,bは同じオブジェクトです"」が実行されました。解説まず、変数a,bに整数型(Integer)を宣言し変数aには「10」変数bには「5」を代入します。次にIf文の条件式を確認すると比較演算子と論理演算子が利用されており「変数aが10かつ変数bが5」の場合に真(True)を返す設定にしています。"変数aは10、変数bは5です"」が実行されました。このように条件式には複雑な条件を付けることもできますので、条件分岐に応じて利用するようにしましょう。解説まず、変数aに整数型(Integer)を宣言し「10」を代入します。次にIf文の条件式を確認すると比較演算子を利用して「変数aが5」の場合に真(True)を返す設定にしています。"変数aは10です"」が実行されました。このように上から順に条件式に当てはまるかをチェックしていき、真(True)の場合はそれ以下の処理を実行します。解説If文の処理が1つだけの場合は、1行で記述することが可能です。"変数aは10です"」を実行するマクロになります。1行で記述する場合は、以下のようにThenに「:(コロン)」を記述し、その後ろに条件式が真(True)の場合に実行される処理を記述します。If」は記述する必要はありません。これにより1行で記述することは可能ですが、可読性が悪くなるので省略しないようにしましょう。処理が1つだけの場合に利用できますので、例えば変数aに「5」を代入して実行しても何も起こりませんので、こちらも一度ご確認ください。ちなみにこちらのサンプルコードを複数行で記述すると以下のようになります。「Else」も省略可能ですので、こちらも覚えておきましょう。寛IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^RSSフィードを登録すると最新記事を受け取ることができます。印刷設定エラー処理エクセルVBAのステートメントこちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。リンクエクセルVBAのオブジェクトこちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。リンクエクセルVBAのプロパティこちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。エクセルVBAのメソッドこちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。エクセルVBAのイベントこちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。Applications)を利用したIE(InternetExplorer)の制御についてまとめています。ExcelのVBAでIE(InternetExplorer)を操作することで自動ログインや自動データ入手などができますので、非常に便利なプログラムです。