トップ > 資格を活かすには > やってみよう!Excel VBAで業務改善! > VBAとの出会い編 第21話「これじゃあ、うごかない!」

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

Exit Forの判定って…?

星くんは、書き上げた紙を満足げに眺めます。

「ウン!これでいい!そもそもやりたかったことは、A列にあってC列にないアイテムのチェックなんだ。
なら、入れ子のループの内側のループでC列を見ていき、同じアイテムが見つかったところでそのA列のアイテムはもう用済みなんだ。外側のループの処理を次のアイテムに移す。
そしてC列の最後まで見にいっても同じアイテムが見つからなければ…
これはA列にあってC列にはないアイテム…つまり、色を変えチェックすべきアイテムということなんだ!」
星くんはとりあえず、ここまでの部分をコードにしてみることにしました。

「For…Next…ステートメントを途中でぬけるときは、確か"Exit For"という命令を使うんだったな…」 ウンウンとうなりながらも、なんとかわかる範囲でVBAのコードを書き上げました。

「…よし!これでいい!
A列のアイテムとC列のアイテムが、"異なる"ときではなく"同じ"ときに、内側のループを"Exit For"でぬけるんだ。
そして"Exit For"でぬけたときはなにもしないで、次のループに移る。
もし"Exit For"でぬけていないときは、C列の最後までアイテムを探したけど見つからなかったとき…
つまり、A列にあってC列にはないアイテム(チェックすべきアイテム)ということなんだ!
…けど、"Exit For"でぬけたかどうかなんて…どーやって判定したらいいんだろう…??」

シーズン1 「VBAとの出会い」編: 各エピソードへのリンク
一覧にもどる