サンプル画像
Excelマクロ塾メニュー

エクセルマクロ・VBAは慣れが肝心
最初は難しく感じるExcelのマクロとVBAですが、仕組みが理解できると徐々に使いこなせるようになってきます!
自分のペースで着実に勉強しましょう!

エクセルマクロ塾
エクセルマクロ塾

条件分岐

条件によって実行する処理を変えたいときは、[ If ~ Then ]ステートメントを使います。

今回はこの仕組みと使い方について説明します。

 

条件分岐を行うには

プログラムを実行中に条件によって異なる処理をしたい場合、[ If ~ Then ]ステートメントを使い、処理をそれぞれに分岐させます。


条件とは、条件に合う(True)条件に合わない(False)という答えを出す式を使うことによって条件に合うときだけ処理が行われるように設定します。

[ 条件 ] ⇒ 合う ⇒ [ 処理1 ] ⇒ [ 処理2 ] 

       ⇒ 合わない ⇒ [ 処理2 ]


条件に合うときだけ処理1を行い、その後に処理2へ進む。

条件に合わなかった場合、処理1を行わずに処理2へ進む。

 

If ~ Thenステートメント

If ~ Thenステートメントの使い方と解説を行います。

 

If  [ 条件を入力します ] Then

   [ 処理1 ]

End If

   [ 処理2 ]

 

*解説

条件に合うときの処理をIfとEnd Ifの間に入力します。上では[ 処理1 ]の部分になります。

条件1に当てはまらなかった場合でも処理を行うものはEnd Ifの下の行 [ 処理2 ]の部分に入力します。

 

*例

If Range("A1").Value = 10 Then

 Range("B2").Value = 5

End If

Range("C3").Value = 10

 

*解説

If Range("A1").Value = 10 Then

セルA1の値が10であるとき、下行の処理(Range("B2").Value = 5)の処理を行う。

 


 

ケース①

エクセル VBA

                           

エクセル VBA

A1のセルに10の値が入っているので、B2セルに5の値が設定されました

(Range("B2").Value = 5)

 


 

ケース②

エクセル VBA

              

エクセル VBA

A1のセルに1という値が入っているので、If ~ Then処理が実行されずC3のセルに10の値だけが設定されました。

Range("C3").Value = 10

 


 

If ~ Thenステートメントを使った条件分岐について説明しました。

次回は条件分岐が複数あるときについての説明を行います。

VBA