| 
    
     |  | B2セルからB51セルまでリアルタイムデータが入ります。各セルのリアルタイムデータの更新間隔は一定ではなく1秒間に1回更新されることもあれば5分間に1回更新されることもあります。また、B2セルからB51セルまで偶然の一致を除いて更新されるタイミングはバラバラです。最終的に実現したいことは、例えばB2セルのリアルタイムデータが5回更新された時に5回とも同じ値だったのか否かがわかるようになりたいのです。B2セルからB51セルの各セルで上記のことがわかるようになりたいのです。そこで、とりあえずB2セルのみにリアルタイムデータが入る設定にして以下のVBAを書いてみました。実行したところ、データが更新されるたびにB2セルの値を右隣のC2セルにどんどん蓄積していってくれました。ところが、B2セルとB3セルの2箇所で異なったリアルタイムデータを受信するようにしたところ、B2セルのデータが更新していない時でもB3セルのデータが更新したタイミングで更新されていないB2セルのデータをC2セルに蓄積してしまいます。OnDataに望みをかけていたのですが駄目でした。これ以上どうしたらよいのかわかりません。どなたか教えていただけないでしょうか?よろしくお願いいたします。 
 Option Explicit
 
 Dim mystart As Integer
 Dim mycontinue As Boolean
 
 Sub 監視開始()
 
 mystart = 3
 mycontinue = True
 
 ActiveSheet.OnData = "データ"
 
 End Sub
 
 Sub 監視終了()
 
 mycontinue = False
 
 End Sub
 
 Sub データ()
 
 Dim nexttime As Date
 
 Sheets(1).Cells(2, mystart) = Cells(2, 2)
 
 If mycontinue Then
 mystart = mystart + 1
 nexttime = Now() + TimeValue("00:00:01")
 Application.OnTime nexttime, "データ"
 End If
 
 End Sub
 
 |  |