~セルの値を条件付きで操作する基本~
Excel VBAでセルの値を操作する際、すべてのセルに一律の処理をするだけでなく、「条件に応じて異なる処理をしたい」場面がよくあります。
そのような場合に使われるのがIf構文です。
この記事では、セルの値を判定し、条件に応じて値を設定する基本的な方法を、初心者にもわかりやすく解説します。
目次
1. If構文の基本形
まず、If構文の基本的な書き方を確認しましょう。
If 条件 Then
'条件を満たす場合の処理
End If
または、Elseを使って、条件に応じて処理を分けることもできます。
If 条件 Then
'条件を満たす場合の処理
Else
'条件を満たさない場合の処理
End If
2. セルの値を条件付きで設定する基本例
■ 例:セルA1の値が100以上なら「合格」、それ以外なら「不合格」をB1に設定する
Dim score As Double
score = Range("A1").Value
If score >= 100 Then
Range("B1").Value = "合格"
Else
Range("B1").Value = "不合格"
End If
3. 実用的なパターン別サンプル
● 文字列の判定
セルの値が「OK」の場合だけ、背景色を変える
If Range("A1").Value = "OK" Then
Range("A1").Interior.Color = RGB(144, 238, 144) '薄い緑色
End If
● 数値の範囲判定
80点以上なら「優秀」、50点未満なら「要注意」と表示する
Dim score As Double
score = Range("A1").Value
If score >= 80 Then
Range("B1").Value = "優秀"
ElseIf score < 50 Then
Range("B1").Value = "要注意"
Else
Range("B1").Value = "普通"
End If
● 空白セルの判定
セルが空白なら「未入力」と表示する
If Range("A1").Value = "" Then
Range("B1").Value = "未入力"
End If
4. 複数セルに条件付き処理をする例(ループとの組み合わせ)
例えば、A列に複数のデータがあり、100以上のセルにだけ色を付ける場合:
Dim i As Long
For i = 1 To 10
If Range("A" & i).Value >= 100 Then
Range("A" & i).Interior.Color = RGB(255, 255, 0) '黄色
End If
Next i
5. まとめ:If構文を使いこなして柔軟な処理を
If構文は、セルの値に応じて動的に処理を変えるための基本中の基本です。
条件付きで値を設定したり、書式を変更することで、Excelをより実用的にカスタマイズできます。
コメント