作者steam ()
看板Trading
標題Re: [問題] 如何在EXCEL紀錄DDE的資料
時間Thu Jul 31 16:58:03 2008
最近剛好在玩這個
比較簡單的方法就設個timer
先在vba建立模組 然後加入下面幾個副程式
------------------------------------
Sub Schedule()
DoEvents
If Sheet2.Cells(2, 1) = 1 Then '當這個欄位值為1的時候開始紀錄
Call record '把DDE值抓到EXCEL的副程式
Call timer_Start 'timer開始
End If
End Sub
-------------------------------------
Sub timer_Start() '開始timer 每秒call Schedule一次
Application.OnTime Now + TimeValue("00:00:01"), "Schedule", Schedule:=True
End Sub
-------------------------------------
Sub timer_Stop()
On Error Resume Next '停止timer
Application.OnTime Now + TimeValue("00:00:01"), "Schedule", Schedule:=False
End Sub
-------------------------------------
Sub record() '紀錄DDE資料的副程式
Sheet2.Cells(2, 2) = Sheet2.Cells(2, 2) + 1 '這欄用來記錄現在行數
Sheet2.Cells(Sheet2.Cells(2, 2), 3) = Sheet1.Cells(1, 1)
'假設DDE要記錄的值在 Sheet1的(1,1)這個欄位
'將這資料存在 Sheet2中
End Sub
-------------------------------------
自己改掉上面寫的欄位成你要的就ok啦
要記得先將資料表中 Sheet2.Cells(2, 2), Sheet2.Cells(2, 1) 這兩個欄位給 0
不過話說這樣出來的資料量會很龐大喔......XD
※ 引述《anygod (GDP)》之銘言:
: ※ 引述《sesee (小七)》之銘言:
: : 大家好
: : 請問如果我想紀錄EXCEL裡DDE的資料
: : 例如A1 是隨時變動的DDE值
: : 從8:45:00 每隔1秒鐘紀錄在B1 B2 B3.........
: : 這樣的VBA要怎麼寫呢?
: : 我試過修改別人的VBA 可是跑不出來
: : 偵錯也不知道哪邊有錯誤
: : 謝謝回答 ^^
: 有VBA嗎? 可以寄給我看看嗎?
: 我目前也再弄DDE設定一些模型 但是VBA不熟
--
第一次學攝影就上手.....(嗎??)
http://www.wretch.cc/album/steam
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.250.111.46
1F:推 newred:酷唷~真是感謝分享 XD 07/31 19:39
2F:推 newred:讓我想到一件事~ 如果你只是單純要盤後分析用,可以去開寶來 08/10 11:10
3F:→ newred:他們新的 點金靈環球通 K棒的資料是可以用EXCEL轉存出來的 08/10 11:11
4F:→ newred:而且如果你在裡面設定一些技術指標,裡面資料也可以同時匯出 08/10 11:12