マクロで条件に合うセルに色をつける
マクロ講座34回
入力された値を判断して、セルに背景色を塗る Excel 2013 マクロ講座
点数が80点以上ならセルに色をつける
セルの値が80点以上なら色をつけるマクロを考えます。
80点以上ならピンクという条件判定処理を、If~Then~Else ステートメントで行います。
繰り返し処理には、For~Nextステートメントを使います。
(サンプルファイルは、こちらから 2013マクロ講座34回サンプルデータ)
条件に合うセルの背景に色を塗るマクロ
以下の表で80点以上ならセルの背景に色をつけます。
セルを1つずつチェックしていくには、Cells プロパティを使います。
Cells プロパティは、行と列を数値で指定することでセルを選択できるためにFor~Nextステートメントでセル範囲を条件判断する際に非常に便利です。
セルを1つずつチェックしていくには、Cells プロパティを使います。
Cells プロパティは、行と列を数値で指定することでセルを選択できるためにFor~Nextステートメントでセル範囲を条件判断する際に非常に便利です。
Cells プロパティの使い方
例の場合のセルの行番号は2から10、列番号は2から4へと変化します。
行の変数をiとして、For i = 2 To 10
列の変数をjとしてFor j = 2 To 4とすれば、順にセルを選択しながら、条件判定することができます。
条件判定は、If...Then...Else ステートメントを使います。
「条件1」に一致する場合は「処理1」を実行
「条件1」に一致しない場合は「処理2」を実行
列の変数をjとしてFor j = 2 To 4とすれば、順にセルを選択しながら、条件判定することができます。
条件判定は、If...Then...Else ステートメントを使います。
「条件1」に一致する場合は「処理1」を実行
「条件1」に一致しない場合は「処理2」を実行
80点以上は、ピンク、それ以外は、水色に背景のセルを塗りましょう。
Sub セルが80以上ならピンク() Dim i As Integer, j As Integer For i = 2 To 10 For j = 2 To 4 If Cells(i, j).Value >= 80 Then '80以上の場合 Cells(i, j).Interior.ColorIndex = 22 'ピンク Else Cells(i, j).Interior.ColorIndex = 20 '水色 End If Next j Next i End Sub
条件は、ElseIfで追加できますから、細かく色分けすることも可能です。
今日の講義は以上です。お疲れ様でした。