見出し画像

マクロルーティン#20(指定した文字全てに色を付ける)

指定した金額以上の値を全て赤にする

皆さんこんにちは。
今回は列の中の金額が指定した金額以上であればフォントの色を変えるコードの書き方をご紹介します。


まずは前回(マクロルーティン#19)の解答例です。
次の図のようにE列にC列+D列の値を数式を入れずに入力するというマクロの書き方です。

画像9


画像2

★[Option Explicit]の文字がコードウィンドウに書いてある場合は消してくださいね。

画像3

書けましたでしょうか??
実際に書いて実行してみてくださいね。
「i」の使い方がいまいちだった人は、マクロルーティン#18の「◆考え方」を一度見てみてくださいね。

画像4


本題

今回は「行を下の方向に+1ずつ移動させる」方法を使って、文字の色を変えるコードの書き方をご紹介します。

◆目標
まずは、次の図のようにE2の値のフォントを赤にしてみる。

画像9

◆書くコード
Range("E2").Font.Color = vbRed

◆読み方
E2のフォントのカラーはレッド

◆図解

画像6


それでは、「もしE2の値が10000以上ならフォントは赤」をコードで書くと・・・
思い出しましたか?
ここで「If」を使います。
マクロルーティン#15を見てみましょう!

画像10


そうです。
If Range("E2").Value >= 10000 Then (以上は >= 
 ここに(E2のフォントは赤)と書く
End If
   ↓
   ↓
If Range("E2").Value >= 10000 Then
   Range("E2").Font.Color = vbRed
End If

ここまで理解出来たら、
「行を下の方向に+1ずつ移動させる」方法を使って、E列で一万以上のフォントを全て赤に変えましょう!
もうできますよ。



◆ヒント
一行目コード:「i」は2から10まで変わる
二行目コード:もし(”E” & i )の値が一万以上なら
三行目コード:(”E” & i )のフォントは赤
四行目コード:もし終わり
五行目コード:次!

★[Option Explicit]の文字がコードウィンドウに書いてある場合は消してくださいね。

実際に書いて実行してみることが大事です!
長くなりましたので解答は次回です。

画像7

フォントではなくセルの色を変えたいとき
Range("E2").Interior.Color = vbRed
★「.Font」を「.Interior」にします。
↓結果

画像9


それでは、次回マクロルーティン#21で。

いいなと思ったら応援しよう!