エクセル関数を使って判断式を記述する
エクセルのデータに、以下のようなデータが記述されている場合があるとします。
<エクセル上のデータ>
A列 B列 C列
ア A ア
イ a
ウ A
エ S
オ P
カ W
キ G
ケ B
コ H
セルD1のところに「=IF(VLOOKUP(C1,A1:B9,2)="A","○","×")」と記述したとします。
この意味ですが、A1〜B9の範囲内を元として、A列の中に、セルC1に記述されている「ア」という文字がある場合、左側から2列目、つまりB列の文字が「A」ならば、D1のセルに「○」を表示するという意味です。
つまり、セルC1の値が、ア,イ,ウの場合は「○」を、セルC1の値が、ア,イ,ウ以外の場合は「×」をD列内に表示させることになります。
しかし、難点はB列の値を見ても分かるとおり、大文字小文字のAとaの区別をつけられないということです。
「A=CHAR(65)」なので、「=IF(VLOOKUP(D1,A1:B9,2)=CHAR(65),"○","×")」としたとしても、大文字と小文字の区別をつけることは出来ません。
さて、これを解決したい場合にはどうしたら良いでしょうか?
大文字と小文字の区別を付けたいときには、CODE関数を使います。
このコード関数を使用すると、大文字のAは、65と解釈することが出来ます。つまり、「CODE(A)=65」と解釈することが出来ます。
ですので、これを利用して次のように記述します。
「=IF(CODE(VLOOKUP(D1,A1:B9,2))=65,"○","×")」
このように記述すれば、大文字と小文字を区別して判断してくれます。
この関数式で判断すると、セルC1の値が、ア,ウの場合は「○」を、セルC1の値が、ア,ウ以外の場合は「×」をD列内に表示させることになります。