皆さん、こんにちは。今日は、ExcelのFILTER関数を使って、特定の文字列で始まるデータを抽出する方法をご紹介します。例えば、「商品名が『A』で始まるものだけをリストアップしたい」といったケースで役立ちますよ。
FILTER関数の基本的な使い方
まずは、FILTER関数の基本からおさらいしましょう。FILTER関数は、指定した条件に合致するデータを抽出するための関数です。基本的な構文は以下のとおりです。
- 配列抽出対象となるデータ範囲を指定します。
- 条件抽出の条件を指定します。
- [見つからない場合]条件に合致するデータがない場合に表示する値を指定します(省略可能)。
例えば、商品リストから在庫が10以上の商品を抽出する場合、次のように入力します。
=FILTER(A2:B20, B2:B20>=10, "該当なし")
「○○で始まる」データを抽出する方法
では、本題の「特定の文字列で始まる」データを抽出する方法を見ていきましょう。具体的には、LEFT関数と組み合わせて使用します。
LEFT関数とは?
LEFT関数は、文字列の左端から指定した文字数分の文字を抽出する関数です。構文は以下のとおりです。
=LEFT(文字列, 文字数)
例えば、セルA1に「Apple」という文字列が入っている場合、
=LEFT(A1, 1)
とすると、「A」が返されます。
FILTER関数とLEFT関数の組み合わせ
特定の文字列で始まるデータを抽出するには、FILTER関数の条件部分でLEFT関数を使用します。例えば、商品名が「A」で始まるデータを抽出する場合、以下のように入力します。
=FILTER(B20, LEFT(A20, 1)="A", "該当なし")
この数式では、A20の各セルの先頭1文字が「A」と一致するかを確認し、一致する行を抽出します。
実際の使用例
具体的な例を見てみましょう。以下のような商品リストがあるとします。
| 商品名 | 在庫数 |
|---|---|
| Apple | 15 |
| Banana | 8 |
| Avocado | 20 |
| Blueberry | 5 |
| Apricot | 12 |
このリストから、商品名が「A」で始まる商品を抽出するには、以下の数式を使用します。
=FILTER(A2:B6, LEFT(A2:A6, 1)="A", "該当なし")
結果は以下のとおりです。
| 商品名 | 在庫数 |
|---|---|
| Apple | 15 |
| Avocado | 20 |
| Apricot | 12 |
よくある質問や疑問
Q1: 大文字と小文字を区別せずに抽出するにはどうすればよいですか?
Excelのデフォルトでは、大文字と小文字を区別して比較します。大文字と小文字を区別せずに抽出するには、文字列をすべて小文字または大文字に変換してから比較する方法があります。例えば、商品名が「a」で始まるデータを抽出する場合、以下のように入力します。
=FILTER(B20, LEFT(LOWER(A20), 1)="a", "該当なし")
この数式では、LOWER関数を使用して商品名をすべて小文字に変換し、先頭1文字が「a」と一致するかを確認しています。
Q2: 複数の文字で始まるデータを抽出するにはどうすればよいですか?
LEFT関数の第2引数で抽出する文字数を指定することで、複数の文字で始まるデータを抽出できます。例えば、商品名が「Ap」で始まるデータを抽出する場合、以下のように入力します。
=FILTER(B20, LEFT(A20, 2)="Ap", "該当なし")
この数式では、商品名の先頭2文字が「Ap」と一致するかを確認しています。
まとめ
今回は、ExcelのFILTER関数を使って、特定の文字列で始まるデータを抽出する方法をご紹介しました。LEFT関数と組み合わせることで、柔軟なデータ抽出が可能となります。ぜひ、日々の業務で活用してみてください。



コメント