• ベストアンサー

VBA の if 文の質問です

下記のようなif文を実行したのですが Or のあとの条件が無視されてしまっているようなのですが、このような書き方ではだめなのでしょうか? else if で地道に分岐させたほうがいいのでしょうか? If Cells(1, 1).Value <> "" Or Cells(1, 2).Value <> "test" Or Cells(1,3) <> 0 Then 処理内容 End If

質問者が選んだベストアンサー

  • ベストアンサー
  • porilin
  • ベストアンサー率22% (142/631)
回答No.2

ご質問の構文をExcelのVBAに転機したら、後ろの条件も反映していましたよ? Sub test() If Cells(1, 1).Value <> "" Or Cells(1, 2).Value <> "test" Or Cells(1, 3) <> 0 Then MsgBox ("該当") End If End Sub

masaki1976
質問者

お礼

ありがとうございます 考えていた結果が出る式は Or でなく、 And を使うべきでした・・・ ということで自己解決しました。 まぬけな質問をしてお騒がせしてすみませんでした

その他の回答 (2)

  • porilin
  • ベストアンサー率22% (142/631)
回答No.3

#2です。 他の回答者さんへの指摘は削除対象ですが 私が試した場合はA1とB1とC1が条件反映の対象セルになっています。 A2とA3は全く見ていません。

masaki1976
質問者

お礼

ありがとうございます 考えていた結果が出る式は Or でなく、 And を使うべきでした・・・ ということで自己解決しました。 まぬけな質問をしてお騒がせしてすみませんでした

  • meron_
  • ベストアンサー率40% (51/127)
回答No.1

試してみました。 Or のあとの条件が無視されてませんよ。 A1は空白、A2は"test"、A3は999とした場合、3番目の条件に引っかかります。

masaki1976
質問者

お礼

ありがとうございます 考えていた結果が出る式は Or でなく、 And を使うべきでした・・・ ということで自己解決しました。 まぬけな質問をしてお騒がせしてすみませんでした

関連するQ&A