Q.
エクセルで住所録を作りました。 ある条件に合う人、例えば『東京都』在住の人だけを抽出したいのですが、簡単な抽出方法があれば教えてください。
A.
前回は、エクセルのフィルタ機能の中で、最も使いやすい『オートフィルタ』について書きました。 今回はもう一つの機能『フィルタオプション』について書きます。
『フィルタオプション』も、フィルタ機能の一種ですので、多くのレコード(データ)がある住所録などのデータベースから、或る条件に合うレコード(データ)を探し出す機能です。 しかし、『オートフィルタ』とは違う便利な機能を持っています。 それでは『オートフィルタ』とどう違うのでしょう。
■ フィルタオプションとは
フィルタオプションは、次の点で、『オートフィルタ』と異なります。
- 複数の抽出条件(探し出す条件)を一度に設定できる
『オートフィルタ』は、探し出す条件を一つずつ適用し、次から次へと絞り込んでいきます。 つまり、『東京に住む男性』を探し出すには、まず、住所の項目で『東京』というキーワードを設定し、先ず東京に住む人を探し出します。 そして次に、性別の項目で『男』と言うキーワードで、更に絞り込んで探します。 つまり二回の操作が必要となります。 しかし、『フィルタオプション』は、それを一回の操作で探し出す事が出来ます。
- 探し出した結果は、指定の場所に新しくリストとして作成できる
『オートフィルタ』では、探し出した結果は、オリジナルの住所録などのリストの範囲内に、条件に合わないものは隠して、条件に合うものだけを見えるようにします。 つまり住所録の条件に合わないレコードを折りたたんで隠したような表示になります。 しかし、『フィルタオプション』では、そのような表示の仕方も選択できますが、別の場所に条件にあったレコードだけのリストを作成する事が出来ます。 つまり、『オートフィルタ』では、『オートフィルタ』を解除すると、条件に合ったリストは消えてしまいますが、『フィルタオプション』では、そのリストを残しておく事が出来ます。
それでは、その『フィルタオプション』の使い方について説明します。
■ フィルタオプションを使う
例として、作成した住所録から『東京都に住む男性で30歳以上』の条件に合う人を探してリストを作ってみましょう。まず、検索条件を設定する表を作成します。
検索条件表の作成
- 住所録の項目行(住所録の一番上の行)の項目だけを全てコピーし、別のシート(例えばSheet2)の任意の場所に貼り付けます。
この場合、別のシートでなくても、同じシート内でレコードが入力されていない行、即ち、住所録の最終レコードよりも下の行ならどこでも構いません。
- 探したい条件を、貼り付けた各項目の下のセルに入力します。 今回の例では、『住所』の項目の下に『*東京*』、『性別』の項目の下に『*男*』、『年齢』の項目の下に『>=30』(大なりイコール30)と入力します。 ここで『*』はワイルドカードと呼ばれる記号で、例えば『*東京*』は『東京都を含む』という意味を表します。 条件を設定しない他の項目の下のセルは、空欄のままにしておきます。
以上で、検索条件を設定する表の作成は終了です。 次に、その条件に合う新しいリストを次の手順で作成します。
条件に合うリストの作成
- 住所録のレコードが入力されている任意のセルをマウス左クリックします。
- エクセル画面上方のツールバーにある『データ』をマウス左クリックします。
- ドロップダウンメニューが現れますので、その中から『フィルタ』をマウス左クリックします。
- 更にドロップダウンメニューが現れますので、その中から『フィルタオプションの設定』をマウス左クリックします。
- 小さな『フィルタオプションの設定』画面が現れますので、次の項目を設定します。
a. 『抽出先』の設定
『選択範囲内』と『指定した範囲』のどちらかを選択しますが、『選択範囲内』を選択すると、『オートフィルタ』の場合と同じように、作成した住所録の範囲内(領域内)で、条件に一致しないレコードが隠れた状態の表示になります。 一方、『指定した範囲』を選択すると、作成した住所録とは別の場所に新しく条件に合ったレコードのリストを作成します。 今回は、『指定した範囲』の文字の上をマウス左クリックし、選択します。
b. 『リスト範囲』の設定
探し出す元となる、住所録全体の範囲を入力します。 通常、その範囲は自動的に入力されますが、もし違っていれば、先ず、『リスト範囲』の入力窓をマウス左クリックし、カーソルをその窓の中に移します。 その後、シート上で、住所録の範囲の左上コーナーセル上でマウス左ボタンを押し、そのまま(ボタンを押したまま)マウスをドラッグし(動かし)、住所録範囲の右下コーナーセル上でマウス左ボタンを離します(いわゆる範囲設定の為のマウスドラッグ操作)。
c. 『検索条件範囲』の設定
探し出す条件(検索条件)を設定した表の範囲を指定します。 ここでは、検索条件表の全て、即ち、条件を設定しない項目も含んだ、項目とその下の条件の二行の範囲を指定します。『検索条件範囲』の入力窓を先ず、マウス左クリックし、カーソルをその窓の中に移します。 その後、シート上で、上記で作成した検索条件表の範囲の左上コーナーセル上でマウス左ボタンを押し、そのまま(ボタンを押したまま)マウスをドラッグし(動かし)、検索条件表の範囲の右下コーナーセル上でマウス左ボタンを離します(いわゆる範囲設定の為のマウスドラッグ操作)。
d. 『抽出範囲』の設定
条件に合ったレコードの新しいリストを作成する場所を指定します。 『抽出範囲』の入力窓を先ず、マウス左クリックし、カーソルをその窓の中に移します。 その後、シート上で、新しくリストを作りたい場所のセル(そのセルが、新しいリストの左上コーナーセルになります)をマウス左クリックします。この時、上記手順で行なった場合、指定するセルは、住所録と同じシート内でなければなりません。 即ち、住所録の最後のレコードよりも下の行が適切です。 もし、住所録と違ったシートに新しいリストを作りたい場合は、先ず、新しいシートの上で任意のセルをマウス左クリックし、上記(2)からの手順を実行すれば、住所録とは別のシートに作成できます。
e. 『重複するレコードは無視する』の設定
この設定は、もしレコードに重複するもの(全ての項目のデータが同じ)が有れば、それを全て表示するか、一つのレコードだけを表示するかを決めるものです。 重複するものを表示したくない場合、『重複するレコードは無視する』の文字の上をマウス左クリックし、チェックボックスにチェックを入れます。
f. 『フィルタオプションの設定』画面下の『OK』ボタンをマウス左クリックします。
g. 指定の場所に条件にあったレコードのリストが作成されます。
如何でしょうか、うまく条件に合ったリストが作成できましたでしょうか? 今回は、説明を簡単にする為に、一般的な方法について書きました。 この他に、新しいリストを作る時に、全ての項目ではなく、選択した項目だけが表示されるリストを作成する方法や、条件に合うレコードの表示する数を指定してリストを作成する方法があります。 Google などで、『エクセル フィルタオプション』で検索すると、幾つかの説明サイトが現れますので、それらを参考にしてチャレンジしてみてください。
情報提供者: 塚本 隆志 (T&M) 2005年12月5日