データを順番に確認しながら、条件によって処理を変える
A列の数値を以下のルールに沿って判定し、結果をB列に入力したい場合のコードは以下になります。
- 20以上の場合は「○」
- 10以上20未満の場合は「△」
- 10未満の場合は「×」
For i = 1 To 5
If Cells(i, 1) >= 20 Then
Cells(i, 2) = "○"
ElseIf Cells(i, 1) >= 10 Then
Cells(i, 2) = "△"
Else
Cells(i, 2) = "×"
End If
Next i
解説はこちら
🛠️具体的な動きの流れ
- A列の数値を1行ずつ確認する
For i = 1 To 5 で、1行目から5行目まで順番に処理します。iの値が1、2、3……と変わることで、Cells(i, 1)がA1、A2、A3……と順番に変わります。
👉 For文について詳しくは【こちら】 - A列の数値が20以上か確認する
If Cells(i, 1) >= 20 Then で、A列の数値が20以上かを確認します。
20以上の場合は、Cells(i, 2) = “○” によって、同じ行のB列に「○」を入力します。 - 20未満なら10以上か確認する
20以上ではなかった場合、ElseIf Cells(i, 1) >= 10 Then で、A列の数値が10以上かを確認します。
10以上の場合は、同じ行のB列に「△」を入力します。 - どちらの条件にも当てはまらない場合
20以上でも10以上でもない場合は、Else の処理が実行されます。
この場合は、同じ行のB列に「×」を入力します。 - 次の行へ進んで同じ処理を繰り返す
Next i で次の行へ進み、A列の数値を確認します。
5行目まで処理が終わると、マクロの処理も終了します。
If文を使う実務マクロ
- 条件に合うものを1つずつ最終行まで処理をする ※近日公開予定
