ストレッチ博士
建玉できたら自動で決済注文を入れたい
単純な話なのですがご相談にのってください。
約定したら自動でストップロス注文用のマクロが動作してほしいのですが動いてくれません。
A2セルには建玉番号(正確には冒頭1文字だけなので「2」)が入るようになっておりまして、建玉なければ0、あれば2と表示されます。
建玉できたら決済注文用のマクロ(KessaiOrder)を発動させたいというシンプルな希望です。
イベントプロシージャでA2セルを監視するだけで良いと思うのですが、発動してくれません。
Private Sub Worksheet_Change(ByVal Target As Range)
'建玉番号が変更されたら
'If Target.Address = Range("A2").Address Then
If Range("A2").Value = 2 Then
Call KessaiOrder
End If
End Sub
2021年11月24日
大野 了
ストレッチ博士さん、こんにちは!!
『発動してくれません』というのはChangeイベントが発生しないということでしょうか?
もしそれでしたら、A2のセルが計算式になっておりませんでしょうか?
ExcelのChangeイベントはセルに何か入力等があった場合に動作するイベントとなるため、
計算式の結果が変わるような場合、残念ながらイベントが発生しません。
また、岡三RSSの関数の出力も通常の手入力と方式が異なるためChangeイベントが発生しません。
これらの場合でも、何かイベントを拾われたい場合は
Calculateとイベントがありますので、こちらだとイベントが発生します!!
Private Sub Worksheet_Calculate()
If Range("A2").Value = 2 Then
Call KessaiOrder
End If
End sub
2021年11月25日
ストレッチ博士
大野さま
ありがとうございます!
計算式じゃダメなんだと初めて知りました
確かに計算式自体は変更されてないですもんね。
いつもながらの貢献、敬服いたします
2021年11月25日
大野 了
ストレッチ博士さん、こんにちは!!
いやー実は・・・
昔、同じようなことをやってできなかったので・・・(笑
少しでもお役に立てて幸いです!!
2021年11月25日