- ベストアンサー
エクセルVBAのIf,Then 構文でOr条件とAnd条件の結合方法?
ワークシート関数で書けば =IF(OR(F18=0,AND(F15>0,F16>0)),TRUE)です。 これをVBAで書こうとして If Sheet1.Range("F18") = 0 Or Sheet1.Range("F15") > 0 And Sheet1.Range("F16") > 0 Then MsgBox True Else MsgBox False End If とやってみたのですが、正しくないようです。 どのように書けばいいのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>とやってみたのですが、正しくないようです。 式は正しいと思いますよ ANDとORは、ANDが先に演算されます。/*と+-では、/*が先に演算されるようなものです。 でも、わかり易くするために、#1のかたのように括弧をつけるほうが良いですね。
その他の回答 (2)
- Calbee
- ベストアンサー率25% (1/4)
回答No.2
しゃべるように、そのまま記述したらいかがですか。 -------- IF Sheet1.Range("F18")= 0 then Msgbox Ture Elseif Sheet1.Range("F15") > 0 And Sheet1.Range("F16") > 0 Then Msgbox Ture Else Msgbox Fales End if -------- IF分中に確か二つの条件までしか出来なかったような・・・
質問者
お礼
ありがとうございました。
- kagep
- ベストアンサー率23% (171/721)
回答No.1
If Sheet1.Range("F18") = 0 Or (Sheet1.Range("F15") > 0 And Sheet1.Range("F16") > 0) Then かな。外してたらごめんなさい
質問者
お礼
ありがとうございました。
お礼
よくわかりました。 ありがとうございました。