Categories: 教師のEXCEL講座

【教師のEXCEL講座】VLOOKUP関数~名簿から該当者を抽出~

こんにちは。福田泰裕です。

EXCELのVLOOKUP関数の使い方を解説します!
VLOOKUP関数なんて分からない!という方は、まずこちらの記事をご覧ください👇

学校では、クラス全体の名簿から該当者を抽出して、新たな名簿をつくることがよくあります。
例えば、

  • 模試などの申込をした人の名簿
  • テストが10点未満の人の名簿

などです。
EXCELのフィルタ機能を使って抽出してもよいのですが、自動化できたら楽ですよね!

今回は、VLOOKUP関数を使って、名簿から該当者だけを抽出する方法をご紹介します!

最後まで読んでいただけると嬉しいです!

目次

広告

VLOOKUP関数を使わずに抽出する方法(フィルター)

次のように模試の申込者の一覧表を作成する場合を考えます。

フィルターという機能を使って…👇

抽出してコピペする方法もあります。
しかし、この作業を何度も繰り返しやるのは大変です。

VLOOKUP関数で「〇」の付いた人を抽出する方法

それではこの抽出作業を、VLOOKUP関数を使って自動化していきます。
そのためには、少し準備が必要です。

まず、一覧表の左側に番号を入力します。

次に、セルA3に次のように入力します。

=IF(D3=””,””,COUNTIF($D$2:D3,”〇”))

これは、IF 関数とCOUNTIF関数を組み合わせたものです。

セルD3が空欄ならば空欄、そうでなければCOUNTIF関数を実行します。

COUNTIF($D$2:D3,”〇”)

なので、範囲「$D$2:D3」にある「〇」の数を数えます。

あれ?
「$」は前半だけなの?

と思われたでしょう。
そこが今回の特徴です。

検索範囲を「$D$2:D3」とすることで、オートフィルをでコピーしたときにD2は固定され、D3は一緒に動きます
試しに、オートフィルを使って上下にコピーしてみましょう。

このように、赤の検索範囲の上が固定され、下が一緒に動きます
その中から「〇」の数を数えるので…👇

このように、「〇」が付いた人に上から番号が付けられるのです!

あとはこの番号をVLOOKUP関数で検索してあげましょう。

セルC10に、=IFERROR(VLOOKUP(B10,$A$2:$C$6,3,FALSE),””)
(※エラーならば空欄、エラーでなければVLOOKUP関数を実行する。)

と入力してオートフィルで下へコピーすると…👇

このように、「〇」の付いた人だけ抽出できました!
試しに〇の位置を変えてみてもうまく動作することを試してみてください!

VLOOKUP関数で「10点未満」の人を抽出する方法

次は、特定の条件を満たす人を抽出する方法をご紹介します。

このように、上の得点表から10点未満の人を抽出する方法をご紹介します。

基本的な考えは、先ほどの例と同じです。
10点未満の人に上から番号を付ければよいのです。

今回はセルA3に、このように入力します。

=IF(D3>=10,””,COUNTIF($D$2:D3,”<10″))

10点以上の場合は空欄で、10点未満の場合はCOUNTIF関数で人数を数えます。

これを上下にオートフィルでコピーすると…👇

10点未満の人に番号が付きました!
後は、同じようにIFERROR関数とVLOOKUP関数を使って検索すると…👇

10点未満の人だけを抽出することに成功しました!
試しに点数を変更して、うまく動作するか確認してみてください!

まとめ:VLOOKUP関数で抽出を自動化できる

いかがでしたでしょうか。

このように、COUNTIF関数と組み合わせることで名簿からの抽出を自動化できます。
一度作っておけば、提出物の管理や再テストの名簿作りがかなり楽になります。