VLOOKUP関数を使って別シートにある値を表示する。

シートとシートを合体させて表示することがあるので、メモ。
やりたいことを実現するには、「VLOOKUP関数」を使います。

例)表「組名」と、表「出席番号」を合体する場合

※出席番号は、組名+連番となっている。

[シート名:組名]

A B
1 組No. 組名
2 20  あかぐみ  
3 21  おぐみ  
4 22  ももぐみ  


[シート名:出席番号]

A B C
1 出席番号 氏名 組名
2 2001 おおの ゆか  ※ココに「組名」シートの組名を表示
3 2002 おおしまゆか   
4 2003 おおた ゆか   
4 2004 おの ようこ   
1. 「MID関数」を使って、出席番号から組no.を抜き出します。

MID(A2,1,2)

2. 1.と「VLOOKUP関数」を使って、組名を表示します。

VLOOKUP(MID(B2,1,2),組名!A:B,2,false)

[シート名:出席番号]

A B C
1 出席番号 氏名 組名
2 2001 おおの ゆか  =VLOOKUP(MID(A2,1,2),組名!A:B,2,false) 
3 2002 おおしまゆか  #N/A 
4 2003 おおた ゆか   
4 2004 おの ようこ   


で、場合によってはこのままだと「#N/A」と表示されてしまいます。
その理由は、MID関数で抜き出した数字が「文字列」として扱われているためです。
そこで、MID関数で抜き出すデータを「数字」に変換します。

3. MID関数で抜き出した文字列を数字に変更する。

MID(B2,1,2)*1

[シート名:出席番号]

A B C
1 出席番号 氏名 組名
2 2001 おおの ゆか  =VLOOKUP(MID(A2,1,2)*1,組名!A:B,2,false) 
3 2002 おおしまゆか  #N/A 
4 2003 おおた ゆか   
4 2004 おの ようこ   


これでOKなはず!
「出席番号」の表示が文字列となっている場合は、必ず数字への変更してください。



◎参考ページ
VLOOKUP関数【キッカリ検索編】--Excel・エクセル
VLOOKUP関数でExcel帳票への自動入力を可能にする:Tech TIPS - @IT
Excel 文字列を数値に一括変換~Excelの達人技
◎関連ページ
はてなグループ