4

次のif句があります。

if ucase(displayanzeige) = "Y" \
or isnull(displayanzeige)      \
and ucase(bstatus) = "2"       \
or ucase(bstatus) = "1"

if句の最初の部分は機能しています。

if ucase(displayanzeige) = "Y" \
or isnull(displayanzeige)

しかし、2番目の部分は機能していません:

and ucase(bstatus) = "2"      \
or ucase(bstatus) = "1"

if句の何が問題になっていますか?助けてください

4

2 に答える 2

4

角かっこを使用して、if条件を識別しやすくします。

if (ucase(displayanzeige) = "Y" or isnull(displayanzeige))
    and (ucase(bstatus) = "2" or ucase(bstatus) = "1")

あなたは現在持っています:

1 or 2 and 3 or 4

システムはこれを「 1は真または2、3または4は真でなければならない」と解釈できます。

次のようなブラケットの配置:

(1 or 2) and (3 or 4)

「 1または2が真でなければならず、3または4が真でなければならない」とシステムに通知します

于 2012-11-24T12:59:14.273 に答える
2

角かっこを使用すると、問題の解決策になります。-

 if (ucase(displayanzeige) = "Y" or isnull(displayanzeige)) and (ucase(bstatus) = "2" or ucase(bstatus) = "1")

現在、システムは条件を希望どおりに解釈できませんでした。使用bracketsすることはあなたにとってより良いオプションです。

于 2012-11-24T13:00:08.430 に答える