【実践問題10選】VLOOKUP関数を使いこなす!基本から応用まで徹底演習

Excel

すもリーマン
すもリーマン

VLOOKUP関数の基本は分かったけど、いざ使おうとすると手が止まる

すもリーマン
すもリーマン

もっと実践的な練習をしてVLOOKUPをマスターしたい

でんちゃん
でんちゃん

今回はそんなすもリーマンのために、ExcelのVLOOKUP関数の実践的な練習問題を10問用意したよ!

各問題には、具体的なデータと、それに対するVLOOKUP関数の使い方、そして解説がついています。

基本問題から応用問題まで、ステップバイステップで解き進めることで、VLOOKUP関数を自信を持って使いこなせるようになるでしょう。

でんちゃん
でんちゃん

VLOOKUP関数の基本をまだ確認していない方は、こちらの記事も参考にしてくださいね!


なぜVLOOKUP関数の練習が必要なの?

でんちゃん
でんちゃん

VLOOKUP関数の構文やルールを理解するだけでは、実際にデータ処理を行う際に「あれ、どうすればいいんだっけ?」と迷ってしまうことがあります。

これは、VLOOKUP関数がExcelの機能の中でも特に「実践で役立つ」からこそ、多くのデータの種類や状況に対応する必要があるためです。

練習問題を解くことで、次のようなメリットがあります。

でんちゃん
でんちゃん

さあ、準備は良いですか?VLOOKUP関数の実践演習を始めましょう!


VLOOKUP関数実践問題10選

問題を解く前に、まずは問題をよく読み、ご自身の力でVLOOKUP関数を入力してみてください。もし詰まってしまっても大丈夫!
ヒントや解説を参考にしながら、一つずつクリアしていきましょう。

でんちゃん
でんちゃん

是非Excelを開いてリストをコピーして手を動かしながら問題を解いてみてください!

問題1:社員番号から氏名を取得する(基本中の基本!)

部署で管理している社員データから、社員番号をもとに社員の氏名を取得しましょう。

【データ】

社員リスト(Sheet1)

社員番号氏名部署
S001山田太郎営業部
S002佐藤花子開発部
S003田中一郎総務部
S004鈴木美咲営業部
社員リスト

検索シート(Sheet2)

社員番号氏名
S002
S004
S001
検索シート

【目的】 Sheet2のB列に、Sheet1の社員番号に対応する氏名を表示する。

【期待する結果】


【ヒント】

  • 検索値:Sheet2のA列
  • 範囲:Sheet1の社員リスト全体
  • 列番号:氏名は何列目?
  • 検索方法:完全一致で探しましょう。

【解答】

Sheet2のB2セルに以下の関数を入力し、フィルハンドルで下方向にコピーします。

=VLOOKUP(A2,Sheet1!$A$2:$C$5,2,FALSE)

【解説】

  • A2: 検索したい社員番号が入力されているセルです。
  • Sheet1!$A$2:$C$5: 検索対象の表の範囲です。$で絶対参照にすることで、関数をコピーしても範囲がずれません。
  • 2: 範囲の左端から数えて、2列目(氏名の列)のデータを取得したいので「2」を指定します。
  • FALSE: 完全一致で検索します。
問題1の結果

問題2:商品コードから単価を取得する(別のシートから検索!)

商品データが入力されたシートから、商品コードをもとに単価を取得しましょう。

【データ】

商品マスター(Sheet1)

商品コード商品名単価
P001ノート150
P002ボールペン100
P003消しゴム80
P004ファイル300
商品マスター

注文リスト(Sheet2)

注文番号商品コード数量単価
1001P0035
1002P00110
1003P0042
注文リスト

【目的】 Sheet2のD列に、Sheet1の商品コードに対応する単価を表示する。


【解答】

Sheet2のD2セルに以下の関数を入力し、フィルハンドルで下方向にコピーします。

=VLOOKUP(B2,Sheet1!$A$2:$C$5,3,FALSE)

【解説】

  • 検索値はSheet2のB列の商品コード、範囲はSheet1のA2からC5です。
  • 単価は範囲の3列目にあるので「3」を指定します。
問題2-結果

問題3:検索値が見つからない場合(エラー処理の練習!)

存在しない商品コードを検索した時に、エラーが表示されないようにしましょう。

【データ】 問題2のデータを使用します。

注文リスト(Sheet2)に以下を追加

注文番号商品コード数量単価
1004P0091

【目的】 P009のような存在しない商品コードが検索された際に、「#N/A!」エラーの代わりに「商品なし」と表示する。


【ヒント】

  • VLOOKUP関数をIFERROR関数で囲みましょう。

【解答】 Sheet2のD2セルに以下の関数を入力し、フィルハンドルで下方向にコピーします。

=IFERROR(VLOOKUP(B2,Sheet1!$A$2:$C$5,3,FALSE),”商品なし”)

【解説】

  • IFERROR(値, エラーの場合の値): VLOOKUP関数がエラーを返した場合に、「商品なし」という文字列を表示するように設定しています。
問題3-結果

問題4:大文字・小文字、半角・全角が混在している場合(表記ゆれ対策!)

IDの表記ゆれがあるデータから、正しく部署名を取得しましょう。

【データ】

ユーザーマスター(Sheet1)

ID氏名部署
user001Aさん企画部
USER002Bさん開発部
user003 Cさん経理部
user004Dさん広報部
ユーザーマスター

申請リスト(Sheet2)

申請No.ID申請内容部署
A001User002資料請求
A002user001問合せ
A003user003承認依頼
申請リスト

【目的】 Sheet2のD列に、IDに対応する部署名を表示する。ただし、IDには大文字・小文字や末尾に半角スペースの表記ゆれがある。


【ヒント】

  • VLOOKUP関数は大文字・小文字、半角・全角を厳密に区別します。
  • 検索値をTRIM関数LOWER関数/UPPER関数で整形してからVLOOKUPに渡してみましょう。

【解答】

Sheet2のD2セルに以下の関数を入力し、フィルハンドルで下方向にコピーします。

=VLOOKUP(LOWER(TRIM(B2)),Sheet1!$A$2:$C$5,3,FALSE)

【解説】

  • TRIM(B2): B2セルの文字列の前後にある余分なスペース(半角スペースや全角スペース)を削除します。
  • LOWER(TRIM(B2)): TRIM関数でスペースを削除した後、すべての文字を小文字に変換します。これにより、Sheet1のIDと表記を揃えて検索できるようになります。必要に応じてUPPER関数(すべて大文字に変換)を使うこともできます。
問題4-結果

問題5:複数条件での検索(VLOOKUPの限界と対策!)

VLOOKUP関数は基本的に1つの条件でしか検索できませんが、工夫することで複数の条件で検索しているように見せることができます。

【データ】

販売実績(Sheet1)

支店名商品名売上
東京ノート5000
大阪ボールペン3000
東京ボールペン2000
大阪ノート4000
販売実績

検索シート(Sheet2)

支店名商品名売上
東京ボールペン
大阪ノート
検索シート

【目的】 Sheet2で指定した「支店名」と「商品名」の組み合わせに対応する売上を表示する。


コメント

タイトルとURLをコピーしました