名表と照合2
「文字列を数に」で名表と照合する準備はできました。
照合の説明をするためにこのような名列を準備します。
「クラス番号」の数字と「生徒の名前」です。
関数VLOOKUP
このタテの「クラス番号」「点数表」を「クラス番号」「名前」の名表と照合するには関数VLOOKUPを使います。
関数 =VLOOKUP(表から検索したい数値,参照したい表の範囲,表から取り出したい列,検索方法) → =VLOOKUP(A2,I2:J12,2,FALSE) を書き入れます。
この場合、表から検索したい数値は生徒の「クラス番号」なのでA列、このA列と参照したい表の最左列を比較します。
参照したい表の範囲は「クラス番号と点数の表」なので「I2からI12のクラス番号」と「J2からJ12の点数」です。
左上と右下のセルを書き記します。なのでI2:J12
表から取り出したい列はA列の生徒の「クラス番号」と表の1列目「クラス番号」を検索して2列目の「点数」を取り出したいので2です。
検索方法は「TRUEの近似値一致」か「FALSEの完全一致」です。この場合クラス番号が完全に一致しなければならないのでFALSEです。
FALSEは数字「1」でも代用可能です。
絶対参照
関数VLOOKUPを書き入れ、下のセルにも適応するためにドラッグしてみます。
106番のFさんまでは上手くいっていますが、それ以降はダメです。何故なのでしょうか。
112番Lさんのセルを見てみると理由が解ります。
関数 =VLOOKUP(表から検索したい数値,参照したい表の範囲,表から取り出したい列,検索方法)
表から検索したい数値はA13のセル、つまり112番Lさんのところまで上手くズレてくれていますが、参照したい表の範囲にもズレてしまっているんです。
これを何とかするためには「$」絶対参照を使います。
関数 =VLOOKUP(A2,$I$2:$J$12,2,FALSE) と書き入れてやると「I2:J12の表」を固定しずらさなくなります。
勿論この場合には列は動かないので関数 =VLOOKUP(A2,I$2:J$12,2,FALSE) でも問題ありません。
これで全員分が参照でき、欠試者のところには数値がないとエラーがでるようになりました。