見出し画像

【Day15】文系オタクのエンジニア道~制御文 If文について~

こんにちは
安田です

今回はIf文と呼ばれる条件を分岐させる制御文について学習しました


「If」とはもしも〇〇だったら

もしも〇〇だったら✕✕する
といった形で条件をつけることができます

ExcelのIf関数と同じです

もしA1の値が60より大きかったら
B1に「合格です」を表示する
といった形です

If~Thenステートメント

こんな表を作りました

もしB2の値が60より大きかったら
C2に「合格です」と表示する
のコードはこちらです

Sub 条件分岐()
    If Range("B2").Value > 60 Then
        Range("C2").Value = "合格です"
    End If
End Sub
ジョナサンは64点だったので「合格です」という表示されました

コードを書くときの注意点

If 条件文 Thenを書いたあとは
必ずEnd Ifで閉じること

中身を書いていくと、忘れてしまうみたいです
メモメモ✎

論理演算子

条件が2つあるときに使います
前回、演算子のところでやった内容が活きてきました!

B2の値が60より大きく、かつ80未満の場合
C2に「GOOD」と表示する

Sub 論理演算子()
    If Range("B2").Value > 60 And Range("B2").Value < 80 Then
        Range("C2").Value = "GOOD"
    End If
End Sub
60点より大きく80点未満だったので「GOOD」と表示されました

If~Then~Elseステートメント

Elseは
そうでない場合、それ以外 という意味があります

B2の値が60点より大きかったら「やれやれだぜ」
そうでなかったら「メメタァ!」と表示する

最後は全部表示させたかったので
コードが少し長くなりました

Sub 条件分岐2()
    If Range("B2").Value > 60 Then
        Range("C2").Value = "やれやれだぜ"
    Else
        Range("C2").Value = "メメタァ!"
    End If
    
    If Range("B3").Value > 60 Then
        Range("C3").Value = "やれやれだぜ"
    Else
        Range("C3").Value = "メメタァ!"
    End If
    
    If Range("B4").Value > 60 Then
        Range("C4").Value = "やれやれだぜ"
    Else
        Range("C4").Value = "メメタァ!"
    End If
    
    If Range("B5").Value > 60 Then
        Range("C5").Value = "やれやれだぜ"
    Else
        Range("C5").Value = "メメタァ!"
    End If
    
    If Range("B6").Value > 60 Then
        Range("C6").Value = "やれやれだぜ"
    Else
        Range("C6").Value = "メメタァ!"
    End If
    
    If Range("B7").Value > 60 Then
        Range("C7").Value = "やれやれだぜ"
    Else
        Range("C7").Value = "メメタァ!"
    End If
End Sub
しっかりと表示されていますね

まとめ

If~Thenステートメントは
もしも〇〇だったら〇〇するという条件分岐のコードを書くことができる

ポイントは
「If~Then」のあとは「End If」をすぐに記載する

If~Then~Elseステートメントは
Elseというものを使って
条件文じゃなかった場合のことを設定できる

IfはExcelの関数でもよく使っていたので
めっちゃすんなり頭に入ってきました

参考動画

VBAマスターに俺はなる

最後まで読んでいただき
ありがとうございます
安田

マガジンにまとめてありますので
よかったらそちらも御覧ください


この記事が気に入ったらサポートをしてみませんか?