トップ > 資格を活かすには > やってみよう!Excel VBAで業務改善! > VBAとの出会い編 第23話「システム化への第一歩」

やってみよう!Excel VBAで業務改善!|VBAとの出会い編

ブラッシュアップしたコード

「だろう?ここまでの部分を反映させて、お前の作ったプログラムを書き換えると…こんな具合になるよ」

Sub CorrectCode()
    Dim i As Long
    Dim j As Long
    Dim Hantei As Boolean
    
    '変数の値を初期化する
    Hantei = False
    
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        For j = 2 To Cells(Rows.Count, 3).End(xlUp).Row
            If Cells(i, 1) = Cells(j, 3) Then
                '変数に"True"を代入する
                Hantei = True
                Exit For
            End If
        Next j
        
        If Hantei Then
            '変数の値を"False"に戻す
            Hantei = False
        Else
            'セルの背景色を変える(チェックする)
            Cells(i, 1).Interior.ColorIndex = 6
        End If
    Next i
End Sub

「Boolean型の変数Hanteiは、そもそも初期値で"False"が格納されているんだけど、
プロシージャの最初で明示的に"Hantei = False"と代入するのは、この先のメンテナンスを考えたときわかりやすいからこれでいい。
どうだい星?ブラッシュアップできたろう?」

星くんはうつむいたまま、何か考え込んでいます。

「…さっき、八木が説明したのと全く同じことを、岬さんもいってたよ…」 「岬って…。おまえのアシストについた子だろう?」 「うん…。なんかVBAの資格試験を受けるんだっていって、自分で勉強してるみたいなんだよ」 「ほう…」

八木くんが興味シンシンといった感じで、星くんの話に身を乗り出しました。

第24回「運用するシーンをイメージしよう」に続く
文・イラスト / 武藤 玄

星くんと一緒にSTEP UPしませんか?
シーズン1 「VBAとの出会い」編: 各エピソードへのリンク
一覧にもどる