返回列表 上一主題 發帖

[發問] 如何將DEE連結到Excel的資料,依照想要的時間記錄下來.

本帖最後由 GBKEE 於 2010-11-14 19:01 編輯

回復 1# aries
成交價的變動一分鐘以內, 可能就有變化,或幾分鐘都沒變化.所以應設計為成交價有變動,時紀錄下來.
看盤軟體,傳回成交價的變動時,會引發工作表的重算Calculate   
請依照下列步驟試試看
1指令- 工具-選項-計算 - 計算方式   勾選  [自動] 如圖



2請將程式碼複製到VBA視窗 的 Sheet1物件裡
  1. Private Sub Worksheet_Calculate() '這是Sheet1預設的重算觸動事件程式
  2.     Static i%
  3.     'Static 陳述式  在程序層次中用來宣告變數並配置儲存空間。以 Static 陳述式宣告的變數,在程式執行期間,會一直保留內容。
  4.      With Sheet2.Cells(Rows.Count, i + 1).End(xlUp).Offset(1).Resize(1, 3)
  5.         If .Cells(1, 3).Offset(-1) <> [C2] Then   '成交價有異動時的條件成立時
  6.             .Value = [A2:C2].Value                '將Shse1的日期,時間,成交價記錄到Sheet2
  7.         End If
  8.         If .Row = 100 Then i = i + 3     '到第100列時右移3欄
  9.     End With
  10. End Sub
複製代碼
3於開盤前開啟檔案 試試看

TOP

回復 4# aries
給你的程式碼 執行沒有錯誤啊 請附上你的檔案看看
回復 5# oobird
If .Cells(1, 3) 把中間那個"."刪了!
你所要刪的"." 是 With Sheet2.Cells(Rows.Count, i + 1).End(xlUp).Offset(1).Resize(1, 3)範圍的.Cells(1, 3).Offset(-1)
刪掉後的程式碼 If Cells(1, 3).Offset(-1) <> [C2] Then   依然會產生應用程式或物件定義上的錯誤

TOP

        靜思自在 : 知識要用心體會,才能變成自己的智慧。
返回列表 上一主題