Excel Formulas Academy · レッスン

条件でワイルドカードを使う

アスタリスクと疑問符のワイルドカードで部分一致させます。

レッスン 4/413 ステップ

「条件でワイルドカードを使う」はCoddyKit上の無料Excel Formulas Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはExcel Formulas Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Excel Formulas Academyコースには全4レッスンが含まれています。

完全一致では足りない場合

これまでは、条件で値を完全一致させていました。しかし、実際のデータは不規則です。たとえば、ABで始まるすべての商品コードや、Manager という語を含むすべての職種名を検索したいことがあります。

ワイルドカードを使えば、SUMIF、COUNTIF、AVERAGEIF でテキストの一部に一致させられます。必要なのは、アスタリスクと疑問符という2つの特殊文字だけです。

2つのワイルドカードを知る

ワイルドカードは次の2つだけです。

  • * アスタリスクは、0文字以上の任意の数の文字に一致します
  • ? 疑問符はちょうど1文字に一致します

これらを引用符で囲んだ条件テキストの中に置きます。引用符とアンパサンドについて学んだことは、そのまま適用できます。

先頭一致

末尾にアスタリスクを置くと、後ろに何が続いてもよいことを表します。A2:A10 にある AB で始まるすべてのコードを数えるには、AB の後ろにアスタリスクを付けます。

これで AB、AB1、ABXYZ など、2文字で始まるあらゆる値に一致します。アスタリスクが、その後に続く任意の文字列の代わりになります。

=COUNTIF(A2:A10, "AB*")

末尾一致

先頭にアスタリスクを置くと、前に何があってもよいことを表します。列Aのラベルが North で終わる行について、B2:B10 の金額を合計するには、先頭にアスタリスクを付けます。

Far North、Up North、単独の North に一致します。アスタリスクが、North の前にある任意の文字列を吸収します。

=SUMIF(A2:A10, "*North", B2:B10)

部分一致

テキストの両側をアスタリスクで囲むと、セル内のどこにあっても一致します。A2:A10 にある Manager を含む職種名を数えるには、次のようにします。

Sales Manager、Manager of IT、Assistant Manager のいずれにも一致します。2つのアスタリスクによって、対象の語の前後にある任意のテキストを許容できます。

=COUNTIF(A2:A10, "*Manager*")

1文字に一致する疑問符

疑問符は、過不足なくちょうど1文字に一致します。コードが常に英字1文字と数字2桁で構成されている場合は、不明な文字ごとに疑問符を1つ使って、A で始まるコードを数えます。

"A??" は A12 や A99 には一致しますが、A1 や A123 には一致しません。長さがちょうど3文字でなければならないためです。

=COUNTIF(A2:A10, "A??")

ワイルドカードとセル参照を組み合わせる

セルを使って先頭一致の条件を作るには、アンパサンドでセルとアスタリスクを連結します。D1 に AB が入っている場合は、そのテキストで始まるすべての値に一致させます。

& によって、D1 の値にアスタリスクが追加され、"AB*" が生成されます。これで、部分一致を直接入力したテキストではなくセルで操作できます。

=COUNTIF(A2:A10, D1&"*")

セルを使って部分一致する

同じ方法で部分一致の検索を作れます。2つのアンパサンドを使い、セルの両側をアスタリスクで囲みます。

ここでは D1 の値が "*value*" のように囲まれるため、D1 を変更すると数式の検索対象もすぐに変わります。入力しながら検索できる簡単な集計表の中心となる方法です。

=SUMIF(A2:A10, "*"&D1&"*", B2:B10)

アスタリスクや疑問符そのものに一致させる

データに実際の * や ? が含まれていて、それ自体に一致させたい場合はどうすればよいでしょうか。前にチルダ ~ を付けます。

したがって、"~?" は文字どおりの疑問符に、"~*" は文字どおりのアスタリスクに一致します。チルダによって、次の文字を通常のテキストとして扱うようスプレッドシートに指示できます。

=COUNTIF(A2:A10, "*~?*")

ワイルドカードはテキスト専用

重要な制限が1つあります。ワイルドカードはテキストには使えますが、数値には使えません。価格のような数値の一部に一致させるために * を使うことはできません。

コードが実際の数値として保存されている場合、ワイルドカードでは検索できません。まずテキストに変換するか、数値の範囲には比較演算子を使ってください。ワイルドカードと数値演算子は、それぞれ異なる問題を解決します。

=COUNTIF(A2:A10, "INV*")

応用例:部門別集計

列Aに SALES-01、SALES-02、HR-01 のようなコードがあり、列Bに予算が入っているとします。Sales 部門全体を合計するには、SALES で始まり、その後に任意の文字列が続くコードに一致させます。

"SALES*" を使った1つの SUMIF で、すべてのサブコードを一度に集計できます。個別に一覧化する必要はありません。接頭辞を変えれば、別の部門も集計できます。

=SUMIF(A2:A10, "SALES*", B2:B10)

クイックチェック

ワイルドカードによる一致についての理解度を確認しましょう。

まとめ:条件でのワイルドカード

IF系の計算関数でテキストの部分一致ができるようになりました。次の点を覚えておいてください。

  • * は任意の文字数に一致し、? はちょうど1文字に一致します。
  • 前方一致には "AB*"、後方一致には "*North"、部分一致には "*Manager*" を使います。
  • D1&"*" のように、アンパサンドを使ってセルと連結します。
  • 文字どおりの * や ? はチルダでエスケープします。また、ワイルドカードはテキストに対してのみ機能します。

これで、SUMIF、COUNTIF、AVERAGEIFを使った条件付き計算は完了です。

=SUMIF(A2:A10, "*North", B2:B10)
無料で開始

AI チューターと学ぶ Excel — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「条件でワイルドカードを使う」レッスンは無料ですか?

はい。「条件でワイルドカードを使う」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Excel Formulas Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Excel Formulas Academyコースには全4レッスンが含まれています。

「条件でワイルドカードを使う」で何を学びますか?

アスタリスクと疑問符のワイルドカードで部分一致させます。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Excel Formulas Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのExcel Formulas Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「条件でワイルドカードを使う」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このExcel Formulas Academyレッスンでコードを書いて実行できますか?

はい。すべてのExcel Formulas Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. SUMIFで条件に基づいて合計する
  2. COUNTIFで条件に基づいて数える
  3. AVERAGEIFで条件に基づいて平均する
  4. 条件でワイルドカードを使う
← Excel Formulas Academyに戻る