Excel関数のOR関数を使って、文字列を判定させようとしたんですが、こちらの意図した結果が上手く得られずに小一時間ほど沼にはまりましたので自分の間違ったポイントを晒しておこうと思います。
今後OR関数を使って判定させようとして上手くいかずに頭を抱えるかもしれない、まだ見ぬ誰かのお役に立てれば幸いです。
ExcelのOR関数の書き方をこんな風に書くと上手く動かない
ExcelのOR関数は指定した条件のどれかに一致したらtrueを返すという関数で、よくIF関数と組み合わせて使われるのではないかと思います。
自分はIF関数と組み合わせてしか使ったことがありません。多分。
たとえば、下記のように、B列に九州地方の都道府県名とそれ以外の都道府県名を適当に記載しておき、その横のC列にIF関数とOR関数を使用して、B列に記載された文字列が「九州地方」か「九州地方以外」かを判定・表示させる場合にはこんな感じで関数を入力します。
と、言いましたが、この書き方は間違った書き方になります。
うえの画像をみての通り、「福岡」が判定の結果「九州地方以外」と表示されています。
正しくは「九州地方」と表示されるはずですので、OR関数が上手く動作していないことになります。
一方で、B4セルの長崎に関しては判定の結果「九州地方」と表示されていますので、こちらに関しては正しくOR関数によって判定されているのが確認できます。
ExcelのOR関数で複数の条件を判定させるには判定対象となるセルを毎回指定する
じゃあどういう風に書けばOR関数が上手く動作するかという点ですが、マイクロソフトのページにExcelのOR関数の使い方の具体例が記載されています↓
この説明を眺めた感じとしては、判定の対象となるセル(今回の場合にはB2セル)が同一の場合でも毎回、引数にそのセルを記載してあげないとうまく関数が動かないということになります。
なので、下の画像のように記載しないとうまく判定されません。
先ほどの画像の場合ではOR関数の1個目の引数に対しては「B3=”長崎”」と記載していたため、B列に対して「長崎」の文字が記載されている場合にのみOR関数が上手く動き、結果としてC列に「九州地方」が表示されました。
ですが、2個目以降に関しては「B3=”佐賀”」や「B3=”福岡”」などと記載していなかったために、B列に記載された文字が「福岡」の場合にOR関数が上手く動いてくれなかったというわけです↓
判定の対象となるセルを1度だけ指定すれば、後は条件を追加すればいいという間違った思い込みが今回のミスを発生させる原因となりました。
まとめ
ExcelのIF関数とOR関数を使って複数の文字列のうち、どれかに一致した場合に処理を分けるときに自分が間違ってやっていたOR関数の使い方を記事にしました。
面倒くさいんですが、毎回セルの指定をしてあげないといけない点に注意しましょう。
判定させる項目が多くなればなるほど数式が長くなってしまうので、わかりにくくなってしまうのが難点ですね。
【本日の近況報告】
正月のテレビ特番を自宅のレコーダーにいくつか録画しているのですが、なかなか見ることができずにいます。
こういった正月特番系って番組の内容(着物着てやってたり、セットが正月飾りがあったり等)も季節感も強く出ますし、いつか見るかと思っているとズルズルといつまでも見ずに結局次の年になってしまうので早く見ないといけません。
【本日の1曲】
Red Hot Chili Peppers/can’t stop
最近巷では「マカロニえんぴつ」という日本のバンドが流行っているようなんですが、ラジオからこのバンドの新曲が流れていて、イントロで使われているギターのリフが「どっかで聴いたことある」感じだったので自分の記憶をたどってみて判明しました。
まんま今回紹介するレッチリの「Can’t stop」でした。
そんな流れで久しぶりに聴いてみましたがカッコいいですね。多分20年くらい前のアルバムに収録されていた曲だと思いますが。
マカロニえんぴつの人もきっとレッチリが好きなんだと思います。知らんけど。