関数の種類 |
データベース関数(D関数) |
書式 |
DGET(Database,フィールド,Criteria) |
DGET関数の使い方
DGET関数はデータベースまたはリストの指定された列(フィールド)を検索し検索条件を満たす行(レコード)の値を一つ抽出します。
検索条件となる値がレコードに含まれていない場合はエラー値#VALUE!が返されます。
検索条件に一致するレコードが複数含まれている場合はエラー値#NUM!が返されます。
引数の指定方法 |
Database |
データベースまたはリストとしてセル範囲またはセル範囲の名前を指定 |
フィールド |
計算対象となる列を文字列やセル参照、位置を表す数値で指定
文字列で指定する場合は二重引用符(")で囲む必要があります。
列の位置を示す番号で指定する場合はDatabaseで指定した範囲の左端列が1となり左端から2番目にあたる列が2となります。 |
Criteria |
検索条件が設定されているセル範囲を指定 |
A5に=DGET(A7:D17,C7,A2:D3)を入力すると以下の表の結果となります。
A5の=DGET(A7:D17,C7,A2:D3)ではDatabaseにA7:D17のセル範囲を指定し、フィールドにC7、
Criteria(検索条件)にA2:D3のセル参照を指定しています。
見出しのソフト種類の行の"セキュリティ"が入力されているレコードを検索し、それに対応する売上の列の値24000を抽出します。
A3に"エクセル"や"英語学習"を入力すると条件を満たすレコードが複数存在している為、エラー値#VALUE!が返されます。
|
A |
B |
C |
D |
1 |
検索条件 |
2 |
ソフト種類 |
販売個数 |
売上 |
販売員 |
3 |
セキュリティ |
|
|
|
4 |
セクリティソフト売上 |
|
|
5 |
24000 |
|
|
6 |
月間ソフト販売内訳 |
7 |
ソフト種類 |
販売個数 |
売上 |
販売員 |
8 |
エクセル |
10 |
60000 |
安部 |
9 |
ワード |
5 |
30000 |
田中 |
10 |
ゲーム |
7 |
42000 |
酒井 |
11 |
英語学習 |
8 |
48000 |
斉藤 |
12 |
セキュリティ |
4 |
24000 |
田中 |
13 |
エクセル |
5 |
30000 |
田中 |
14 |
エクセル |
3 |
18000 |
酒井 |
15 |
ゲーム |
2 |
12000 |
小池 |
16 |
英語学習 |
8 |
48000 |
斉藤 |
17 |
英語学習 |
4 |
24000 |
酒井 |
DGET関数で複数の条件に一致する値を抽出する
A6に=DGET(A7:D17,C7,A2:D3)を入力すると以下の表の結果となります。
複数の条件を指定する場合は同じ列の複数の行に検索条件を指定します。
以下の表の場合、A3、D3に検索条件を入力しています。
従って、検索条件はソフト種類がエクセルで販売員が田中さんの時という事になります。
よって、A5の=DGET(A7:D17,C7,A2:D3)では販売員田中さんが販売したエクセルの
売上げ30000をB6に返します。
|
A |
B |
C |
D |
1 |
検索条件 |
2 |
ソフト種類 |
販売個数 |
売上 |
販売員 |
3 |
エクセル |
|
|
田中 |
4 |
エクセルソフト売上(田中) |
|
|
5 |
30000 |
|
|
6 |
月間ソフト販売内訳 |
7 |
ソフト種類 |
販売個数 |
売上 |
販売員 |
8 |
エクセル |
10 |
60000 |
安部 |
9 |
ワード |
5 |
30000 |
田中 |
10 |
ゲーム |
7 |
42000 |
酒井 |
11 |
英語学習 |
8 |
48000 |
斉藤 |
12 |
セキュリティ |
4 |
24000 |
田中 |
13 |
エクセル |
5 |
30000 |
田中 |
14 |
エクセル |
3 |
18000 |
酒井 |
15 |
ゲーム |
2 |
12000 |
小池 |
16 |
英語学習 |
8 |
48000 |
斉藤 |
17 |
英語学習 |
4 |
24000 |
酒井 |
|
|