こんにちは、さち です。
先日、エクセル(Excel)を使っている時に、*
や ?
といった「ワイルドカード」を使いたいことがありました。
「ワイルドカード」が使えることは知っていたんですが、いつでもどこでも使えるわけではないんですね。完全にハマりました。
今回は、エクセルでのワイルドカードの使い方と、「IF」関数でもワイルドカードを使う方法について書いていきます。
ワイルドカードとは?
ワイルドカードとは、任意の文字をあらわすための記号です。文章だけだと意味が分からないと思うので、簡単に説明します。
ワイルドカードをあらわす記号
エクセルでワイルドカードをあらわす記号は、半角の *
(アスタリスク) と ?
(クエスチョンマーク) です。
*
は0文字以上の任意の文字列、?
は任意の1文字をあらわします。
~
(チルダ)はエスケープ文字と呼ばれるもので、*
や ?
をワイルドカードでなく普通の文字として使いたい時に使います。例えば、~*
と入力すると、ワイルドカードではなく普通の文字「*」として扱われます。同様に ~?
は「?」です。
*
の使用例は下記のとおり。
?
の使用例は下記のとおり。
各表の最終行のとおり、ワイルドカードは数値に対応していないので注意(文字列の「123」ならOK)。
ワイルドカードを使える関数
ワイルドカードを使える場所は「関数」の中だけに限られています。
ただし、ワイルドカードを使える関数は以下の10個だけです。
- AVERAGEIF
- AVERAGEIFS
- COUNTIF
- COUNTIFS
- SUMIF
- SUMIFS
- HLOOKUP
- VLOOKUP
- MATCH
- SEARCH
実は、皆さんおなじみの「IF」関数は対応していません。めちゃくちゃ不便ですね。
ちなみに、ワイルドカードは「検索と置換(Ctrl + F)」でも使えますが、前述の表とは若干挙動が異なります。
「IF」関数でもワイルドカードを使う
「IF」関数はワイルドカードに対応していません。そこで、対応している関数「COUNTIF」と組み合わせて使います。
- エクセルで下記のような表を作りました。まず、「B列」でワイルドカードに対応した「COUNTIF」関数を使って、「A列」から該当する文字列の個数を数えます。
- 「かれん」は該当する文字列なので、「COUNTIF」関数の結果が「1」になっています。
- 次に、「C列」で「IF」関数を使って、「B列」の値が0より大きいかを判断します。これで、「IF」関数でワイルドカードを使ったような状態を作り出せます。
- 「かれん」だけ「IF」関数の結果が「○」になりました。上手くいきましたね。
- B列とC列の式を合体して1つにまとめるとこんな感じ。
例では、「COUNTIF」関数を使いましたが、ワイルドカードに対応した他の関数を使っても、もちろんOKです。
関連記事

コメント