処理進捗のフラグととある処理の実施有無のフラグの組み合わせが以下の場合にThenに進行し、それ以外の場合にElseに進行したいのですが、条件分岐一つで表現する記載方法を教えてください。
▼Thenに進行する条件▼
FLG1=1かつFLG2=0
または
FLG1=1かつFLG2=4
または
FLG1=2かつFLG2=0
または
FLG1=2かつFLG2=3
前提は以下の通りです。
FLG1:とある処理の実施有無を示すフラグで、1または2がアサインされます
FLG2:処理の進捗を示すフラグで、0~4のいずれかがアサインされます
lrtetala
(Lakshman Reddy)
2
Hi @m-minami
Try this
Assign: FLG1 = 1
Assign: FLG2 = 0
If: ((FLG1 = 1 And FLG2 = 0) Or (FLG1 = 1 And FLG2 = 4) Or (FLG1 = 2 And FLG2 = 0) Or (FLG1 = 2 And FLG2 = 3))
Then: Message Box: "Proceed to Then"
Else: Message Box: "Proceed to Else"
Regards,
1 Like
Yoichi
(Yoichi)
3
こんにちは
VBではAndやOrよりもAndAlsoやOrElseの方がパフォーマンスが良いので基本的にはこちらになります。(短絡評価になります)
上記の文面通りですと
(FLG1=1 AndAlso FLG2=0) OrElse (FLG1=1 AndAlso FLG2=4) OrElse (FLG1=2 AndAlso FLG2=0) OrElse (FLG1=2 AndAlso FLG2=3)
ですが式を展開すると以下の様にもかけます
(FLG1=1 AndAlso (FLG2=0 OrElse FLG2=4)) OrElse (FLG1=2 AndAlso (FLG2=0 OrElse FLG2=3))
1 Like
ありがとうございました。想定通りの分岐処理ができました。
1 Like
ありがとうございます!
ご教示いただいた記載方法で想定通りの処理を実現できました。
system
(system)
Closed
6
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.