こんにちは、さち です。
先日、エクセル(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です。
関連記事






コメント