Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Excel 2019)
入力規則について(ユーザー定義)
投稿日時: 24/04/27 16:09:52
投稿者: ラングドシャ

よろしくお願いいたします。
 
A20 のセルに入力規則を設定しました。
ユーザー定義で数式に
=OR(H20<>"登録なし",P20<>"廃")
 
H20に「登録なし」 または P20に「廃」と表示されているときに
入力できなくなるようこの数式を設定したのですが、実際にはこの式だと
H20に「登録なし」 または P20に「廃」であっても入力が可能でした。
 
数式を
=AND(H20<>"登録なし",P20<>"廃")
に変更すると、H20に「登録なし」 または P20に「廃」の時に入力できなくなったのですが
なぜでしょうか?
かつではなくまたはなのでORで合ってるように思うのですが、どのように考えればよいか
教えてください。よろしくお願いいたします。

回答
投稿日時: 24/04/27 17:14:05
投稿者: hatena
投稿者のウェブサイトに移動

入力規則は、設定した式がTrueのときに入力可能、Falseの時に入力不可になります。
 
=OR(H20<>"登録なし",P20<>"廃")
 
だと
(H20が"登録なし"以外)または(P20が"廃"以外)
ということなので、
例えば、
H20が"登録なし"で、P20が"廃"以外だと、
False Or True となり、この結果はTrueですので、
入力可能になります。
 
つまり、どちらか片方がTrue(禁止語以外)なら入力可能です。
 
ご希望のことは、
どちらかが禁止語なら入力禁止、
いいかえると
両方とも禁止語以外なら入力可能
ということです。
つまり、
(H20が禁止語以外)かつ(P20が禁止語以外)で、
式にすると、
=AND(H20<>"登録なし",P20<>"廃")
です。
 
> H20に「登録なし」 または P20に「廃」と表示されているときに
> 入力できなくなるよう
 
この文をそのまま式に翻訳すると下記になります。
 
=NOT(OR(H20="登録なし",P20="廃"))
 
これでもご希望の結果になります。
 
=AND(H20<>"登録なし",P20<>"廃")

=NOT(OR(H20="登録なし",P20="廃"))
がイコールというのは、
ド・モルガンの法則といって、高校数学で学習しています。

投稿日時: 24/04/27 17:56:56
投稿者: ラングドシャ

hatenaさん
 
ありがとうございます。
数式を
>=AND(H20<>"登録なし",P20<>"廃")
これにしたので、余計にわからなくなった感じです。
 
コメントくださった
>=NOT(OR(H20="登録なし",P20="廃"))
これで考えると、わかりやすいと思いました。
 
丁寧にありがとうございました。