クイックナビゲーション
DGET関数
概要
DGET関数は、リストまたはデータベースから指定した条件に完全に一致する1つのレコードのみを抽出し、指定フィールドの値を返します。複数または0件の一致がある場合はエラーを返し、データベース検索の厳密性を確保します。
構文
DGET(データベース, フィールド, 検索条件)
パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| データベース | 範囲 |
はい | データベース領域(見出し行含む) |
| フィールド | 文字列/数値 |
はい | 抽出対象の列指定 |
| 検索条件 | 範囲 |
はい | 検索条件を設定した領域 |
DGET関数の使用
DGETはデータベースから厳密に1件のみ抽出したい場合に使用します。VLOOKUPなどとは異なり、複数一致を許容せずエラーで警告するためデータの正確性を保てます。検索条件範囲はデータベースと重複しない場所に作成します。
DGETの一般的な例
基本的なDGET使用例
=DGET(A4:E10,"収穫高",A1:A3)
複数のりんご木があるため複数一致となり#NUM!エラーを返します。
条件を絞った単一抽出
=DGET(A4:E10,"収穫高",A1:F3)
高さ<16かつ>12のりんご木が1件のみのため、収穫高10を正常に抽出します。
よくある質問
検索条件に一致するレコードが複数存在するためです。条件をより具体的にして1件のみに絞ってください。
検索条件に一致するレコードが0件のためです。条件やデータベース範囲を確認してください。
はい、引用符なしの数字(例:1、2)で列位置を指定できます。
一般的なエラーと解決策
#NUM!エラー
Cause: 検索条件に一致レコードが複数存在
Solution: 条件を追加して1件のみに絞る
#VALUE!エラー
Cause: 検索条件に一致レコードが0件
Solution: 条件内容とデータベースを確認
#NAME?エラー
Cause: フィールド名の綴りミス
Solution: 列見出しと完全に一致させる
注記
- 検索条件範囲はデータベース直下の行を使用しない
- 条件範囲に見出し行+1行以上の条件が必要
- ワイルドカード(*,?)は一部条件で使用可能
- データベース関数(DGET,DSUMなど)は連動して使用推奨
互換性
利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
利用不可:
コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+