ExcelでDGET関数を使ってデータベースから条件に一致するデータを見つける

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

ExcelのDGET関数。

あまり使う機会がないかと思いますが、一定の要件を満たす表であれば、目的のデータを抽出することができます。

DGET_16

(使用Excel;2013)

参考

参考 Office Support;DGET関数

DGET関数の基本

DGET関数は次のような式になります。

「=DGET(データベース,フィールド,検索条件)」

(Office Support;DGET関数より)

DGET 関数の書式には、次の引数があります。

  • データベース    必ず指定します。 リストまたはデータベースを構成するセル範囲を指定します。 データベースは、行 (レコード) と列 (フィールド) にデータを関連付けたリストです。 リストの先頭の行には、各列の見出しが入力されている必要があります。
  • フィールド    必ず指定します。 関数の中で使用する列を指定します。 フィールドには、半角の二重引用符 (“) で囲んだ “樹齢” や “歩どまり” などのような文字列、またはリストでの列の位置を示す引用符なしの番号 (1 番目の列を示す場合は 1、2 番目の列を示す場合は 2) を指定します。
  • 検索条件    必ず指定します。 指定した条件が設定されているセル範囲を指定します。 列見出しと検索条件を指定するセルが少なくとも 1 つずつ含まれている場合は、検索条件に任意のセル範囲を指定できます。

DGET関数の使用例

次のような表を用意しました。

DGET_11

日付と名称を条件として指定し、その条件に一致する金額を検索してみます。

DGET_12

G5のセル(上の図の赤丸部分)にDGET関数を入力しました。(上の図の緑色の枠囲み部分)

記述内容は次のとおりです。

[aside type=”boader”]・データベース A1セル~C20セル

・フィールド C1セル(つまり「金額」)

・検索条件D4セル~F4セル[/aside]

 

DGET関数の条件が不足する場合

上の画像では、「7/1」の「C」という条件を満たすフィールドの値、3,500円が表示されています。この検索の条件を変更した場合、DGET関数を使用した式が入力されたセルが、どのように表示されるのかを確認してみます。

 

条件を満たすフィールドが複数存在する場合

条件を満たすフィールドが複数存在する場合は、「#NUM!」と表示されます。

例えば、Cを削除し、「7/1」のみで検索してみます。

DGET_13

「7/1」はデータベース上に複数存在するため「#NUM!」と表示されます。

今度は条件「C」のみで検索します。

DGET_14

この場合もデータベース上に「C」が複数存在するため「#NUM!」となってしまいます。

 

条件を満たすフィールドがない場合

条件を満たすフィールドがない場合は「#VALUE!」となります。

DGET_15

「7/7」も「F」もデータベース上にはないため、上の画像のようなエラー表示となります。

条件を満たすフィールドが複数存在する場合のエラーと表示が異なります。


■□◆◇ 編集後記 ◇◆□■

昨日乗った湘南モノレール。ICカードが使えませんので切符を購入しました。

大船駅では自動改札でしたが、降りた駅では、私が乗ってきたモノレール乗車していた車掌さんにホームで切符を渡しました。(改札はない)車掌さんは降りた人の定期や切符を確認するとまたモノレールに乗って行きました。