12/12/2022

Excel。AND関数はワイルドカードをつかった条件はつかえません【Wildcard】

Excel。AND関数はワイルドカードをつかった条件はつかえません

<AND関数>

AND関数は、IF関数と組み合わせてつかうと条件の可読性も向上しますが、AND関数でワイルドカードを使おうとしても、つかうことができません。


次の表をつかって、確認してみます。


C列は、A列のデータには、「B」が含まれていて、かつ、B列の住所には「横浜市」が含まれている場合「○」を表示するようにしたいとします。


C2にAND関数をつかった数式を設定します。

=IF(AND(A2="B*",B2="*横浜市*"),"○","")


AND関数の引数には、「B*」や「*横浜市*」というようにワイルドカードをつかっています。

問題ないようにみえますが、C2には、該当データであるにもかかわらず、「○」が表示されていません。


数式をつかった、AND条件でデータを確認する場合には、AND関数ではなくて、IF+COUNTIFS関数をつかうことで、解決することができます。


C2には、

=IF(COUNTIFS(A2,"B*",B2,"*横浜市*"),"○","")


とオートフィルで数式をコピーしました。


A列のデータにBが含まれていて、かつ、B列には横浜市が含まれているデータに「○」を表示することができました。


COUNTIFS関数ならば、引数内の条件にワイルドカードをつかうことができます。


ちなみに、IF+AND関数で算出するならば、

=IF(AND(MID(A2,1,1)="B",MID(B2,5,3)="横浜市"),"○","")

とすることで、対応できますが、ワイルドカードは使用していません。


この場合、含まれるではなく、横浜市が、5文字目に必ずある場合と固定されているならば、対応することが可能だということです。


AND条件だからといって、AND関数を選択するまではいいのですが、「含まれる」などの条件の時、AND関数ではワイルドカードをつかって、算出することができないので、注意が必要です。