【VBAスタンダードに挑戦!】
本日の5分勉強の内容
********************************************************
IF ステートメント
・〇 か X のどちらか判定する(二択)
・「Or」「And」を使って複数条件を設定できる
If 条件 Then
処理
End If
Orの記述方法
Sub 休日セル色付け()
Dim r As Long '行を表すのに使う
Dim c As Long '列を表すのに使う
Dim LastR As Long '最終行を格納するのに使う
c = Selection.Column '列番号を格納する
LastR = Cells(Rows.Count, c).End(xlUp).Row '最終行を取得
For r = 2 to LastR '2行目から最終行まで
If Cells(r, c) = "Sun" Or Cells(r, c) = "Sat" Then 'セルが Sun か Sat のとき・・・
Cells(r, c).Interior.Color = RGB(255, 204, 255) 'セルをピンク色に塗りつぶす
End If
Next r
End Sub
条件に合わない、「Mon」「Tue」などは無視されます。
Orを使わないで上記と同じ結果となる書き方
Sub 休日セル色付け()
Dim r As Long '行を表すのに使う
Dim c As Long '列を表すのに使う
Dim LastR As Long '最終行を格納するのに使う
c = Selection.Column '列番号を格納する
LastR = Cells(Rows.Count, c).End(xlUp).Row '最終行を取得
For r = 2 to LastR '2行目から最終行まで
If Cells(r, c) = "Sun" Then 'セルが Sun のとき・・・
Cells(r, c).Interior.Color = RGB(255, 204, 255) 'セルをピンク色に塗りつぶす
End If
If Cells(r, c) = "Sat" Then 'セルが Sat のとき・・・
Cells(r, c).Interior.Color = RGB(255, 204, 255) 'セルをピンク色に塗りつぶす
End If
Next r
End Sub
「Or」を使わない場合は、条件が1つの If 文を、2つ記述すればよい
********************************************************
「If」は良く使います。
でも、Or, And は使いません。
というか、うまく使いこなせません・・・
上記のサンプルコードの場合は、うまく動くのですが、
もう少し複雑な条件に使用すると失敗することが多く、
一度で成功することは、ほぼありません・・・
なので、Select 文で書けないときは、ひと苦労です。
何がいけないんだろう・・・
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/