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

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

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

条件式

条件式とは2つの数値の比較を行う2つの条件を結びつける真または偽のどちらかを取るか、などを表した式の総称で、制御構文の1つです。

 

主に条件式で使われているのは「真または偽」をとるか、というものです。

真または偽であるかを判定するには「 If Then  End If 」というIf文で書かれます。

 

If文の書式は以下のようになります。

 

If 条件式 Then

  条件式が真の場合 (処理1)

else

  条件式が偽の場合 (処理2)

End I

 

If文は上のように条件を出しながら真であるか偽であるかを1つ1つ判定するときに使用されます。

条件式ではいくつかの記号を覚える必要があります。

それぞれの条件によって、式から答え(真か偽か)を求める内容が変化します。

 

条件式の種類

 

条件式の種類
条件式が表す内容
=
等しい
<>
等しくない
<
~より小さい
<=
以下
>
~より大きい
=>
以上

 

それでは条件式の例として「If Thenステートメント」を使ってコードを書いていきます。

 

エクセルを開きます。

今回は数値を変化させて、ある一定の数値になった場合にメッセージボックスを表示させるものを作ります。

 

まずはA1セルに「 30 」と入力しておきましょう。

 

次にVBEを開きます。

エクセルの上部メニューから[ ツール ] ⇒ [ マクロ ] ⇒ [ Visual Basic Editor ]をクリックします。

 

VBA 条件式

 

Sheet1をダブルクリックして選択します。

Sheet1を指定できたら右側の白いウィンドウ(コードウィンドウ)にコードを記入していきます。

 

VBA 条件式

 

まずはサブプロシージャを作成します。条件式はサブプロシージャ内に作成します。

 

次にシート上のセルを指定と条件式となるIf文を作成します。

 

VBA 条件式

 

上画像の赤枠のように、シートにあるどのセルの値なのかをはじめに指定します。

 

指定ができたらいよいよ条件式の作成です。

画像青枠内の式を見てください。

 

If 数値 > 10 Then
もし数値(最初に指定したセル 今回はA1セル) 10より大きい場合

 

コードの内容はこの様な意味になります。

2行目の説明に移ります。

 

Range ("A1") .Value = 数値 - 1
A1セルにある "数値"で指定してある値 から 1を引きます

 

VBA 条件式

 

最後に条件が満たされなかった場合の式を作成します。

これでIf文は完成です。

コードを書き終えたとき「 End If 」でIf Thenステートメントを閉じることを忘れないように行ってください。

 

VBA 条件式

A1セルに入力されていた「 30 」という値がIf Thenステートメントを実行することにより「 29 」に変化しました。

 

30から29へ移ったときは条件が満たされましたが、A1セルの値が10以下になってしまった場合、つまり条件が満たされなかったときはどのようになるのか見てみましょう。

 

VBA 条件式

 

条件が満たされなかった場合のメッセージボックスが表示されました。

 

条件式ではその時々に合った処理を行うよう様々な条件を指定することができます。

VBA