スプレッドシートでデータモデリングを学ぶ (5/5) Part5

1.はじめに

1.1. ブログの目的と対象読者

前回に引き続きスプレッドシートでVLOOKUP関数を使ってデータを結合する方法を解説します。対象読者は、スプレッドシートの初心者から中級者を対象としています。VLOOKUP関数を理解し、実際の業務でデータを効率的に結合できるようになることが目的です。

1.2. VLOOKUPの概要

VLOOKUP関数は、スプレッドシートでデータを検索し、関連する情報を抽出するための関数です。指定された検索キーに一致するデータを別の範囲またはシートから見つけ、対応する情報を返すことができます。これにより、異なるシートや範囲にあるデータを効率的に結合できます。

2.VLOOKUPを使ってデータを結合する方法

2.1.2つのシートで共通のキーを持つデータの結合

前回と同じく商品情報表シートと売上情報表シートを準備します。

商品情報表シート
売上情報表シート

この2つのシートで共通の項目となるのは商品IDなので商品IDをキーとして列を結合することになります。
結合するために商品売上結合表シートを作成して売上数の値が入る列を準備します。

商品売上結合表シート

VLOOKUP関数記載例

=VLOOKUP(A:A,'売上情報表'!A:B,2,FALSE)
商品売上結合表シートにおけるVLOOKUP関数記載例

E列の2行目に関数を記載します。
=VLOOKUP(A:A,'売上情報表'!A:B,2,FALSE)を以下のようにコンマで区切られている4パートに分解してそれぞれ解説します。
1.A:A
2.売上情報表'!A:B
3.2
4.FALSE

2.2.解説

  1. A:Aとは検索キーとして、商品売上結合表シートのA列(商品ID)のデータを使用します。

  2. '売上情報表'!A:Bとは検索範囲として、別のシート(売上情報表シート)のA列とB列を指定しています。

  3. 2とはその行の2番目の列('売上情報表'のB列)の値を返します。一致するデータが見つからない場合、#N/Aエラーが返されます。

  4. FALSEという引数は、完全一致検索を指定しています。つまり、検索キーが完全に一致するデータのみを検索範囲から返します。

値が問題なく取れたらそのまま下にコピーすると完成です。

商品売上結合表シート無事結合完成

3.VLOOKUPのよくある誤りと対処法

3.1誤った範囲参照

VLOOKUP関数を使用する際、誤った範囲参照によってエラーが発生することがあります。例えば、返すデータの列番号が検索範囲の列数を超える場合、#REF! エラーが表示されます。

対処法:落ち着いて 検索範囲を正しく指定し、返すデータの列番号が検索範囲内にあることを確認してください。また、範囲が変更されることがある場合は、絶対セル参照($記号を使用)を使って範囲を固定するといいです。

3.2.並び替えられていない検索キー

VLOOKUP関数で近似検索(第4引数にTRUEまたは省略)を使用する場合、検索キーは昇順に並び替えられている必要があります。並び替えが適切でない場合、予期しない結果が返されることがあります。

対処法: 検索キーを昇順に並び替えるか、完全一致検索(第4引数にFALSE)を使用してください。完全一致検索を使用する場合、検索キーの並び順は問題ありません。

5.まとめ

5.1.VLOOKUPの利点と限界

VLOOKUP関数は、縦方向にデータを検索し、結合する際に便利なツールです。VLOOKUP関数の利点には、シンプルな構文でデータを結合できること、基本的なデータ検索・結合タスクを簡単に実行できることが挙げられます。

一方、いくつかの限界があります。例えば、検索キーは検索範囲の最初の列にある必要があり、検索範囲の左側の列からデータを取得することができません。また、複数の検索条件に基づいてデータを結合することが難しく、検索キーが一意でなければならないなどの制約があります。場合によっては他の関数にもデータを結合する役割のものもありますので、そちらを検討することになると思います。

5.2.最後に

5回にわたって、スプレッドシートを使ったデータモデリングを解説ということで基本概念、データ操作、結合、具体的なVLOOKUP関数の活用を紹介してきました。
まだまだ基本的な内容なのですが、データモデリングスキルを磨くため少しでもお役に立てれば幸いです。
最後まで読んでいただきありがとうございました!


この記事が気に入ったらサポートをしてみませんか?