データベース-抽出
CS資格・Excelの実務に必須
エクセルでの抽出 フィルタ
- 抽出は構築されたデータベースから、必要なデータだけを取り出すコマンドです。
- メニューの「データ」→「並べ替えとフィルター」に、
・手軽な「フィルタ」 (オートフィルタ)
・詳細な「詳細設定」 (フィルタ オプションの設定)
の2種類があります。 - 検索結果はコピーアンドペーストで他のエリアに貼り付けることができます。
- 検索結果を集計するには「SUBTOTAL」関数を使います。
注意
SUMやCOUNT等の通常の関数では非抽出部分まで集計されてしまいます。
オートフィルタ
- メニューの「データ」→「フィルタ-」のアイコンでON・OFFします。
- フィルタモードがONになれば図のように項目名の横にリスト表示用の▼ボタンが表示されます。
- このボタンを押せばプルダウンメニューが表示され、「すべて」「トップテン」「オプション」と入力済の全項目が選択可能になります。
- 簡単なフィルタで良いなら、項目を右クリックし、「フィルタ」を選択すれば抽出が可能です。
ただし、試験では機能不足で使えません。
テキストフィルタ
- セルのデータが文字列の場合に使います。
- 設定した条件を満たすセルのレコードだけが抽出されます。
- ユーザー設定フィルタ
条件は2つまでしか指定できませんが、より自由度の高い抽出ができます。
下図の場合だと、Cで始まり「2201」を含まないものが抽出されます。
ANDとOR
ANDは2つの条件が両立したセルが抽出され、
ORはいずれか一方でも該当すれば抽出されます。
数値フィルタ
- セルのデータが数値の場合に使います。
- 設定した条件を満たすセルのレコードだけが抽出されます。
トップテン (数値専用)
- 上位(または下位)から指定した順位までを表示します。
- 順位は数値か全体からの比率を%で指定することも可能です。
例
右図の場合は
「上位10位まで」
が抽出されます。
抽出条件の解除
- 「すべて選択」にチェックを付ければそのフィールドの抽出条件は解除されます。
- メニューの「データ」→「フィルタ」を選択すれば全解除になります。
ルール
- 条件設定は各フィールド毎に行います。
- 複数のフィールドに条件を設定すれば各フィールドの条件を全て満たすデータだけが抽出されます。(AND検索)
「いずれかのフィールド条件に合致するもの」(OR検索)を抽出することはできません。 - フィルタモードをOFFにすれば抽出条件は全て解除されます。
- 抽出条件が設定されているフィールドは▼ボタンが青くなっています。
フィルタオプションの設定
- メニュー「データ」の「詳細設定」で起動します。
- より詳細な抽出条件が必要な場合に使います。
- 複数フィールドの抽出条件をORで抽出することも可能です。
抽出先
- ・選択範囲内
抽出結果を抽出元となる「リスト範囲」に上書きします。 - ・指定した範囲
元データはそのままで、別の場所に抽出結果が書き込まれます。
ただしこの機能はバグがあり、抽出先の下にあるデータが消失してしまいますし、消失したデータは復活できません。
リスト範囲
- 抽出元となるデータのある範囲を指定します。
検索条件範囲
- 抽出条件を設定してあるセルの場所を指定します。
条件の見本1
Cで始まる品番全てと、数量が800を超えるA社のフィールド全て品番 | 数量 | 出荷先 |
C* | ||
>800 | A社 |
抽出条件はフィールド名を範囲の1行目に書き、そのフィールドの条件を2行目以降に書きます。
重要
同じ行の条件はANDで扱われ、異なる行の条件はORで扱われます。
条件の見本2
納品日 | 納品日 | 出荷先 | 入金 |
>=2007/10/1 | <2007/10/10 | A社 | 未 |
>=2007/10/1 | <2007/10/10 | B社 | 未 |
この場合はA社分とB社分のデータであって、1日から9日までの納品で未入金のレコードが抽出されます。
条件の見本3
品番 | 数量 | 出荷先 |
C* | >800 | |
>800 | A社 |
この場合はCで始まる品番で数量800を超えるものの全レコードと、A社分で数量800を超えるものの全レコード
抽出範囲
- 抽出先を「指定した範囲」にした場合、抽出する場所を指定します。
- ただし、抽出先をセル番地指定する場合に他シートの番地指定は出来ません。
- この場合は同一シートに抽出してから移動させるか、データ範囲や抽出範囲をセル番地ではなく「範囲名」で指定すれば解決します。
重複するレコードは無視する
- 同じ内容のレコードが複数有った場合に、全てを抽出するのか、1レコードだけ抽出するのかを選択します。