もうこんなに作っちゃったんですか?
「え!?…先輩、もうこんなに作っちゃったんですか?…すごい!」
星くんが目を丸くします。
八木くんはざっと、コードを一瞥して言いました。
「…なるほど。リスト設定シートにあるリストから項目に応じたものを、
出荷一覧シートの選択セルにリスト表示させるのですね」
「コード見ただけでそんなにわかっちゃうんだ…さすがだわ。
どうでしょう?作っててどうも自信が無くて…」
泉先輩が心細そうな表情で、八木くんを見つめます。
星くんは隣で、"なんで俺に聞いてくれなかったんだ?"と、言いたそうな顔をしています。
「そうですねえ…なかなかよくできていますが、指摘できる箇所は色々とありますよ。
例えばここ」
八木くんは、リスト範囲設定プロシージャの3行目と、終わりから2行目を指差しました。
Worksheets("リスト設定").Activate
:
:
:
Worksheets("出荷一覧").Activate
「リスト設定シートのデータを使いたいから、こことここでシートを切り替えてますよね。
これやると、アクティブセルを変更するたびに画面がチラついちゃいます。
Application.ScreenUpdatingを使う手もあるんですが、そんなことしなくても、
シートを切り替えずに別シートのセルを検索したり、範囲を取得することができますよ」
泉先輩は八木くんの解説を、真剣な表情で聞いています。
「他にも…そうですねえ。
これだと引数のListNameが空のときでも検索しちゃうから、
おそらく空のリストを設定しちゃいますね……。
あと、FindメソッドにLookAt引数の指定が無いな。
これだと部分一致した項目名のリストを、誤って設定しちゃう可能性がありますね。
それに…」
コードの問題点を次々と指摘する八木くんの言葉に、泉先輩の表情はみるみる固まっていくのでした。