プロが教える店舗&オフィスのセキュリティ対策術

現在、複数の変数同士の大小関係を比較して、
条件があっていれば○か×を特定のセルに出力する
というマクロを作成しております。

"○"条件を満たした時、しっかりとそちら処理に流れるのですが、
何故か"×"の条件を満たしても、"×"の処理に入ってくれません。
そのままelseの方へ流れてしまいます。
数値の大小関係は何度も確認したのですが、間違ってはいません
でした・・・

自分の力では解決出来ませんでした(>_<)!
どなたかお力添えをお願いします。

以下、問題の箇所です。
このif文より上の箇所では変数a(行座標)の設定と、
各変数への値の代入を行っています。

If lwma52(1) < ema21(1) < lwma13(1) _
And lwma13(2) < lwma13(1) _
And ema21(2) < ema21(1) _
And lwma52(2) < lwma52(1) _
And closes(2) < closes(1) < opens Then

Cells(a, 25).Value = "○"

ElseIf lwma52(1) > ema21(1) > lwma13(1) _
And lwma13(2) > lwma13(1) _
And ema21(2) > ema21(1) _
And lwma52(2) > lwma52(1) _
And closes(2) > closes(1) Then

Cells(a, 25).Value = "×"

Else

Cells(a, 25).Value = ""
End If

よろしくお願い致します。

A 回答 (1件)

例えば


If lwma52(1) < ema21(1) < lwma13(1) _
をどういう意味だと思っているんだろうか?
まさか
If lwma52(1) < ema21(1) AND ema21(1) < lwma13(1) _
と同じ意味だと思っているんだろうか?
もう一度、ヘルプとか文法書を見てね。
    • good
    • 0
この回答へのお礼

レスが大幅に遅れて申し訳ありません(>_<)

f272 さんの言った通りの勘違いをしていました。

あの後、自分なりに調べたり、いくつかテストをしてみたのですが、
まだA<B<Cとした時の動きが分かりません(^-^;)

何にせよ、とても助かりました。
ありがとうございました。

お礼日時:2009/07/15 11:36

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!