標題:
[發問]
利用Textbox LinkedCell 去記錄tick總量變化
[打印本頁]
作者:
vic
時間:
2016-5-3 21:43
標題:
利用Textbox LinkedCell 去記錄tick總量變化
有爬文到可以利用Textbox 的 onchange事件去記錄一直變化的tick值
如果想法很簡單 A1會連結到DDE的交易總量(一直跳動)
插入一個Textbox 去LinkedCell A1
可以A1一變動 就記錄到A5,A6,A7...依序一直記錄下去嗎?
[attach]24150[/attach]
作者:
c_c_lai
時間:
2016-5-4 08:16
本帖最後由 c_c_lai 於 2016-5-4 08:17 編輯
回復
1#
vic
我寫了一支測試範例,能同時來觀測 A1 觸發
以及連結 TextBox1 數據變化的實際狀態。
換句話說,在開盤後啟動此測試檔來進行
觀察 DDE 實務上匯入資料時,它究竟是否會
觸發 『工作表1』 的 「Worksheet_Change()」
事件 (Event),同時是否同步帶動 連結 A1 欄位的
(LinkedCell) 的 TextBox1 之「TextBox1_Change()」,
進而能從 [H1]、[I1] 兩個欄位中觀察到其數據變動之
「增加值」是否同步。如果僅有 [I1] 欄的數據有所增加,
而 [H1] 欄的數據無任何「增加值」,此即表示 DDE
資料之匯入數據值的變化並不會牽動「Worksheet_Change()」
A1 欄位變化的事件 (Event)。
[attach]24152[/attach]
決果值如何煩請告知,以便進一步知悉該如何進行,謝謝!
PS: 因我目前沒有使用券商軟體。
[attach]24153[/attach]
。
作者:
c_c_lai
時間:
2016-5-4 08:20
回復
1#
vic
『工作表1』之程式碼:
Private Sub TextBox1_Change()
[I1] = [I1] + 1
End Sub
Private Sub Worksheet_Change(ByVal target As Range)
If target.Address = "$A$1" Then
[H1] = [H1] + 1
End If
End Sub
複製代碼
作者:
vic
時間:
2016-5-4 08:57
你好 感謝您的協助
目前只有I1的值會一直加總上去
可是H1一直都沒有值
[attach]24155[/attach]
回復
2#
c_c_lai
作者:
c_c_lai
時間:
2016-5-4 16:29
回復
4#
vic
如此看來,DDE 資料之匯入確實不會觸發
Worksheet_Change() (誠如 GBKEE 大大所言),
所以只能藉由像本範例之 TextBox1,透過它來
得知數據之變動。謝謝你的實務測試!
作者:
c_c_lai
時間:
2016-5-4 17:03
你好 感謝您的協助
目前只有I1的值會一直加總上去
可是H1一直都沒有值
回復 c_c_lai
vic 發表於 2016-5-4 08:57
由圖示看出已經跑了 584 Ticks ,
這樣便能同步寫入每一 Tick 的數據資料了。
譬如:
[attach]24158[/attach]
Private Sub TextBox1_Change()
Dim rng As Range
Set rng = [A65535].End(xlUp).Offset(1)
rng.Resize(, 8) = [A1:H1].Value
End Sub
複製代碼
作者:
c_c_lai
時間:
2016-5-5 03:54
回復
4#
vic
考慮 Ticks 數據量大,可修改成:
Private Sub TextBox1_Change()
Dim Rng As Range
' [I1] = [I1] + 1
' Set Rng = [A65535].End(xlUp).Offset(1)
Set Rng = Range("A" & Rows.Count).End(xlUp).Offset(1) ' Rows.Count =1048576 : Long
Rng.Resize(, 8) = [A1:H1].Value
End Sub
複製代碼
作者:
vic
時間:
2016-5-5 11:07
非常感謝 我再試著改成巨集的形式來執行試試~
回復
8#
c_c_lai
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)