VBAで〇〇点以下の人に赤色をつける

スポンサーリンク

60点以下の人に赤色をつけるVBAのコード

下記のコードは60点以下の人のセルを赤色にぬりつぶすVBAコードです。

sub name_score()
dim names as variant
names = array("taguti", "fkoji", "hasimoto", "tanaka", "higasi", "sajio", "kojima", "midori", "kobayasi")
dim scores as variant
scores = array(52,82,99,32,48,62,72,58,59)
for i = 0 to 8
cells(i + 1, 1).value = names(i)
cells(i + 1, 2).value = scores(i)
if cells(i +1, 2).value < 60 then
cells(i + 1, 1).Interior.ColorIndex = 3
end if
next i
end sub

スクリーンショット

上の画像はプログラムを実施した結果です。

スポンサーリンク

コラム: VBAでは要素とインデックスを同時に取ることはできない?

rubyではeach_with_indexといったような配列の要素とインデックスを同時に取得できる機能があります。pythonはメソッドがなくても二重forループが使えます。ですが、VBAはfor ~ nextのnextがあるおかげで二重ループが使えないです。

とはいえ  配列名(i)  で要素がとれるので、とくにできないことはない感じはします。

訂正(2018/9): 普通に使えます

VBAならドットインストールがおすすめです。
Excel VBA入門 (全19回) – プログラミングならドットインストール

コメント

タイトルとURLをコピーしました