😊

Google Sheetsで〇〇で終わらないセルを検知する方法(複数条件)

2023/09/11に公開

tl;dr

=NOT(OR(RIGHT(A1, 1)="X", RIGHT(A1,3)="AAA", A1=""))
=AND(RIGHT(A1, 1)<>"X", RIGHT(A1,3)<>"AAA", A1<>"")

関数の解説

NOT関数 [1]

与えられた論理値を反転させる関数です。

=NOT(論理値)

OR関数 [2]

与えられた論理値のいずれかがTRUEであればTRUEを返す関数です。

=OR(論理値1, 論理値2, ...)

RIGHT関数 [3]

与えられた文字列の右から指定した文字数を返す関数です。

=RIGHT(文字列, 文字数)

〇〇で終わらないセルを検知する方法(複数条件)

まず、"X"で終わるセルを検知する方法を考えます。

=RIGHT(A1, 1)="X"

次に、"X"または、"AAA"で終わるセルを検知する方法を考えます。

=OR(RIGHT(A1, 1)="X", RIGHT(A1,3)="AAA")

この条件を反転させると、"X"または、"AAA"で終わらないセルを検知することができます。

=NOT(OR(RIGHT(A1, 1)="X", RIGHT(A1,3)="AAA"))

しかし、この条件だと、空白セルも検知してしまいます。そこで、空白セルを除外する条件を追加します。(空白セルは空文字列で表され、RIGHT("", 1)は必ず空文字列を返します。そして、空文字列はFALSEと評価されます。)

=NOT(OR(RIGHT(A1, 1)="X", RIGHT(A1,3)="AAA", A1=""))

また、得られた式をド・モルガンの法則を用いて、書き換えることができます。

=AND(RIGHT(A1, 1)<>"X", RIGHT(A1,3)<>"AAA", A1<>"")

補足

今回は条件として、〇〇で終わらないとしたが、RIGHT関数やMID関数を用いることでより柔軟な条件を設定することができます。また、正規表現を用いることで、より複雑な条件を設定することができます。

=NOT(REGEXMATCH(A1, "X$|AAA$|^$"))
脚注
  1. NOT - Google ドキュメント エディタ ヘルプ ↩︎

  2. OR - Google ドキュメント エディタ ヘルプ ↩︎

  3. RIGHT - Google ドキュメント エディタ ヘルプ ↩︎

Discussion