• 公開日:
  • 更新日:

ExcelのDGET関数の使い方|条件を満たすレコードの値を返す

この記事では、ExcelのDGET関数の使い方についてご説明します。

DGET関数の用法や、複数条件を設定する方法等についてもご紹介していますので、参考にしてみてください。

DGET関数とは?

DGET(ディーゲット)関数とは、データベースから条件に合うデータを抽出する関数です。

DGET関数の例

例えば、上の画像ではG7セルに「売上表から6月2日の売り上げを抽出する」という意味のDGET関数が入力されています。

DGET関数の用法

DGET関数の用法には、以下のような例があります。

  • 在庫表から、商品を指定して在庫数を抽出する
  • 点数表から、氏名を指定して点数を抽出する
  • 売り上げ表から、日付と商品名を指定して売上金額を抽出する

DGET関数の書式

まずは、DGET関数の書式を確認していきましょう。

DGET関数の書式

DGET関数の書式は「=DGET(データベース,フィールド,検索条件)」のように引数を3つ使用します。

引数を1つずつ確認していきましょう。

※引数(ひきすう)とは、Excelの関数を使用する際に必要な情報です。関数が結果を返す際の判断材料とイメージしましょう。関数名の後の括弧「()」内に入力します。

第1引数(データベース)

データベース

1番目の引数は「データベース」です。この引数は必須です。リストまたはデータベースを構成するセル範囲を指定します。リストの先頭の行には、各列の見出しが入力されている必要があります。

DGET関数の例

例えば、上の画像では「売上日」「商品名」「個数」「売り上げ」という見出しで分けられたデータリストが入力されている「B3:E8」のセルが「データベース」の引数として設定されています。

第2引数(フィールド)

フィールド

2番目の引数は「フィールド」です。この引数は必須です。「フィールド」とはデータリストの見出しを指します。最大の数値を抽出する数値が入った見出しを「フィールド」の引数として設定します。

DGET関数の例

例えば上の画像では、G7セルに入力したDGET関数で「6月2日の売り上げ」を抽出しているので、リスト内の「売り上げ」の見出しをフィールドの引数として設定しています。

第3引数(検索条件)

検索条件

3番目の引数は「検索条件」です。この引数は必須です。あらかじめ条件となる見出しやデータを任意のセルに入力しておいて、そのセルを検索条件の引数として指定します。どんな条件でデータを抽出するかを決めます。

DGET関数の例

例えば上の画像では、G3セルとG4セルを「検索条件」の引数として設定しています。

あらかじめ条件を入力する際は、画像内のG3セルとG4セルのように項目名とデータをデータリスト内と同じ表記で入力しておく必要があります。

DGET関数の使い方

DGET関数の使い方について、ご紹介します。

データベースから条件に合うデータを抽出する方法

DGET関数を使って、指定した日付の売り上げを抽出する方法についてご説明します。

条件を入力しておく

今回は、上の画像のような成績表から「6月2日の売り上げ」を抽出します。【任意のセル(例:G4)】を選択し、『6月2日』という検索条件を入力しておきます。

DGET関数を入力する

DGET関数を入力します。【任意のセル(例:G7)】を選択し、『=DGET(』と入力します。

データベースの引数を入力する

データベースの引数を入力します。リストを全て選択します。「=DGET(」に続いて『B3:E8,』と入力します。

フィールドの引数を入力する

フィールドの引数を入力します。売り上げのデータを抽出したいので、リスト内の「売り上げ」の見出しをフィールドの引数に設定します。「B3:E8,」に続いて『E3,』と入力します。

条件の引数を入力する

検索条件を設定します。あらかじめ条件を入力しておいたG3セルとG4セルのセル番地を、検索条件として設定します。「E3,」に続いて『G3:G4)』と入力し、【Enter】キーを押します。

DGET関数でデータ抽出する

売り上げのリストから6月2日という検索条件で抽出した結果がG7セルに表示されます。これでDGET関数を使って、指定した日付の売り上げを抽出することが出来ました。

複数条件で行う方法

DGET関数で複数条件を設定する方法について、ご説明します。

複数条件を設定

DGET関数で複数条件を設定する場合は、あらかじめ検索条件を設定するセルに上の画像のように入力しておきます。

見出しと検索条件を横に並べて入力しましょう。

今回は、上の画像の複数条件を使って売上表から「6月2日のパソコンの売り上げ」をDGET関数で抽出する方法についてご説明します。

関数を入力

DGET関数を入力します。

【任意のセル(例:G8)】を選択し、『=DGET(』と入力します。

リストを選択

データベースの引数を設定します。

「=DGET(」に続いて、『B3:E11,』と入力します。

売り上げの見出しを選択

フィールドの引数を設定します。

売り上げを抽出するので「売り上げ」の見出しがフィールドの引数になります。「B3:E11,」に続いて『E3,』と入力します。

条件を範囲選択

検索条件の引数を設定します。

あらかじめ入力しておいたG3セルからH4セルを検索条件として入力します。「E3,」に続いて『G3:H4)』と入力し、Enterを押します。

結果が出る

6月2日のパソコンの売り上げが抽出され、G8セルに表示されました。

これで複数条件を使って売上表から「6月2日のパソコンの売り上げ」をDGET関数で抽出することが出来ました。

離れたセルで範囲指定する方法

DGET関数で離れたセルに入力された見出しを、複数指定することはできません。

複数の見出しを選択

例えば、上の画像のように売上表のリストから6月2日の商品名と売り上げを抽出するDGET関数を入力してみます。

【任意のセル(例:G7)】を選択して、『=DGET(B3:E8,C3,E3,G3:G4)』と入力し、Enterを押してみましょう。

エラーがでる

「Microsoft Excel」ダイアログボックスが表示され、「この関数に対して、多すぎる 引数が入力されています。」というエラーが出てしまいました。

このように、DGET関数では離れたセルに入力された見出しを複数選択してデータを抽出することは出来ません。

しかし、複数の検索条件を設定してデータを抽出することは可能です。

複数の検索条件を設定してデータを抽出する方法については、上記「複数条件で行う方法」セクションをご参照ください。

複数行で行う方法

DGET関数で複数行を範囲選択してデータを抽出することはできません。

複数のリストを選択

例えば、上の画像のような2つのリストから6月2日の売り上げを抽出するDGET関数を入力してみます。

【任意のセル(例:G7)】を選択して、『=DGET(B3:E8,B11:E16,E3,G3:G4)』と入力し、Enterを押してみましょう。

エラーがでる

「Microsoft Excel」ダイアログボックスが表示され、「この関数に対して、多すぎる 引数が入力されています。」というエラーが出てしまいました。

このように、DGET関数では複数行を指定してデータを抽出することは出来ません。

しかし、複数の検索条件を設定してデータを抽出することは可能です。

複数の検索条件を設定してデータを抽出する方法については、上記「複数条件で行う方法」セクションをご参照ください。

DGET関数とVLOOKUP関数の違い

DGET関数と似た関数に、VLOOKUP関数があります。

VLOOKUP関数は、検索条件に一致したデータをリストから検索して取り出してくれる関数です。

DGET関数とVLOOKUP関数で出来ることは似ていますが、検索条件に設定できる項目がVLOOKUP関数では1つ、DGET関数では複数と数が異なるため、状況に応じて使い分けましょう。

VLOOKUP関数の書式は、「=VLOOKUP(検索値,範囲,列番号,[検索の型])」です。

VLOOKUP関数の詳細については、以下の記事をご参照ください。

ExcelのVLOOKUP関数の使い方|指定の列と同じ行にある値を返す

他の関数も合わせてチェック!

全488種のわかりやすいExcel関数一覧表!検索/並び替え/絞り込み機能付