如何將台指期的每一分鐘資料都紀錄在sheet 1裡..請教版上高手前輩~~
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 23# cfuxiong
上層 GBKEE 版大提示的明細範例,
是否已解決了你的問題? |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
本帖最後由 c_c_lai 於 2012-12-15 08:20 編輯
有時會發生一種情形, 就是DDE都有顯示連結成功. 但是真的到盤中時, 卻沒跳動. 解決方式確實是重開 ...
bobo177 發表於 2012-12-14 22:39 
還是老話一句:
1. 如果券商的軟體掛了重新開啟, EXCEL 亦要一併先予關閉後再開 (重新連結DDE)。
程序是:1. 券商的軟體、以及已開啟的 EXCEL 兩者均要先行關閉;
2. 先開啟券商軟體、之後再開啟 EXCEL。
2. 如果券商的軟體開啟正常, EXCEL 都有顯示DDE連結成功,而正常開啟後,
如果有去瀏覽程式碼不小心異動了程式、或者是之後又另外開啟另一支有 VBA
執行的 EXCEL (此過程先前已開啟的 EXCEL 依然還在執行中),極有可能它會影響
到之前已開啟的 EXCEL 而造成不意中斷。此時先前已開啟的 EXCEL 亦要一併先予
關閉後再重開 (重新連結DDE), 當然之後第二支另外開啟的 EXCEL 要先關閉。
3. 如都不是,那就要評估你的 EXCEL 程式碼了。 |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 49# cfuxiong
你的摩台指 DDE 匯入來源並非有連結券商,
請再檢查一下你的 Excel! |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 c_c_lai
請問c大,態量.xls檔案內的 圖表區程式碼要如何寫出來?謝謝。
devidlin 發表於 2013-1-19 20:30 
態量.xls 在哪裡?請上傳檔案看看! |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 60# devidlin
你可以將你目前運用的 Excel 檔案上傳,抽時間我幫你看看該如何修正,
每個人都各自有他們運作的模式與喜好、以及獨到見解、策略應用,
切不要完全套用他人的內容全數抄襲,如此使用起來也完全沒有
個人的風格了、亦無個人之成就感。 |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 c_c_lai
請教 c_c_lai大大
若我要每五分鐘紀錄期貨的委買口數 委賣口數 委買筆數 委賣筆數 委買均 ...
n8975067 發表於 2013-4-19 11:23  - If (Minute(Time) * 60 + Second(Time)) Mod 300 = 0 Then ' 每隔5分鐘執行一次 (5 x 60)
- ' ------ Your statement -------
- End If
複製代碼 |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
本帖最後由 c_c_lai 於 2017-12-8 07:17 編輯
回復 67# winwin
請將你程式內之 RTimer(tm As Date) 模組替換成下列之更新模組,
再試試看。- Public Sub RTimer(tm As Date)
- Dim TimeRange As Range, Rng As Range
- Dim pos As Integer
-
- On Error Resume Next
- If (TimeValue(Now) > TimeValue("13:45:00")) Then Exit Sub
-
- If (TimeValue(Now) >= TimeValue("08:45:00")) Then ' 開盤、收盤時段設定
- ' 盤中處理,將資料匯入寫入工作表單內儲存。
- With Sheets("Sheet1")
- If Not IsError(.[B2]) Then
- .[C1] = "成交價"
- .[D1] = "最高價"
- .[E1] = "最低價"
- .[F1] = "成交量"
-
- Set TimeRange = .[A:A].Find(TimeSerial(Hour(tm), Minute(tm), 0)) ' 檢查 "A" 欄位對應之時間資料
- Set Rng = TimeRange.Offset(, 1).Resize(1, 4)
-
- Rng(1) = Cv ' 成交價
- Rng(2) = Hv ' 最高價
- Rng(3) = Lv ' 最低價
- Rng(4) = Sheets("Sheet4").[H2] - Sheets("Sheet4").[I2] ' 成交量
- Sheets("Sheet4").[I2] = Sheets("Sheet4").[H2] ' 重新設定前成交量
- End If
- End With
-
- ' 加入五分鐘之判斷
- If (Minute(tm) * 60 + Second(tm)) Mod 300 = 0 Then ' 每隔5分鐘執行一次 (5 x 60)
- With Sheets("5K")
- If Not IsError(.[B2]) Then
- .[C1] = "成交價"
- .[D1] = "最高價"
- .[E1] = "最低價"
- .[F1] = "成交量"
-
- Set TimeRange = .[A:A].Find(TimeSerial(Hour(tm), Minute(tm), 0)) ' 檢查 "A" 欄位對應之時間資料
- Set Rng = TimeRange.Offset(, 1).Resize(1, 4)
-
- Rng(1) = Cv ' 成交價
- Rng(2) = Hv ' 最高價
- Rng(3) = Lv ' 最低價
- Rng(4) = Sheets("Sheet4").[H2] - Sheets("Sheet4").[I2] ' 成交量
- Sheets("Sheet4").[I2] = Sheets("Sheet4").[H2] ' 重新設定前成交量
- End If
- End With
- End If
- End If
- End Sub
複製代碼 |
|
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 69# winwin
試試看- Public Sub RTimer(tm As Date)
- Dim TimeRange As Range, Rng As Range
- Dim pos As Integer
-
- On Error Resume Next
- ' If (TimeValue(Now) > TimeValue("13:45:00")) Then Exit Sub
- ' 13:45 這一盤的收盤資料一直空白
- If (TimeValue(Now) > TimeValue("13:46:00")) Then Exit Sub
-
- If (TimeValue(Now) >= TimeValue("08:45:00")) Then ' 開盤、收盤時段設定
- ' 盤中處理,將資料匯入寫入工作表單內儲存。
- With Sheets("1K")
- If Not IsError(.[B2]) Then
- .[C1] = "成交價"
- .[D1] = "最高價"
- .[E1] = "最低價"
- .[F1] = "成交量"
-
- Set TimeRange = .[A:A].Find(TimeSerial(Hour(tm), Minute(tm), 0)) ' 檢查 "A" 欄位對應之時間資料
- Set Rng = TimeRange.Offset(, 2).Resize(1, 4)
-
- Rng(1) = Cv ' 成交價
- Rng(2) = Hv ' 最高價
- Rng(3) = Lv ' 最低價
- Rng(4) = Sheets("Sheet1").[H2] - Sheets("Sheet1").[I2] ' 成交量
- Sheets("Sheet1").[I2] = Sheets("Sheet1").[H2] ' 重新設定前成交量
- End If
- End With
-
- ' 加入五分鐘之判斷
- If (Minute(tm) * 60 + Second(tm)) Mod 300 = 0 Then ' 每隔5分鐘執行一次 (5 x 60)
- With Sheets("5K")
- If Not IsError(.[B2]) Then
- .[C1] = "成交價"
- .[D1] = "最高價"
- .[E1] = "最低價"
- .[F1] = "成交量"
-
- Set TimeRange = .[A:A].Find(TimeSerial(Hour(tm), Minute(tm), 0)) ' 檢查 "A" 欄位對應之時間資料
- Set Rng = TimeRange.Offset(, 2).Resize(2, 4)
-
- ' 增加 "漲跌" 欄位之同步寫入
- Rng(0) = Sheets("Sheet5").[C2] ' 漲跌
- Rng(1) = Cv ' 成交價
- Rng(2) = Hv ' 最高價
- Rng(3) = Lv ' 最低價
- Rng(4) = Sheets("Sheet5").[H2] - Sheets("Sheet5").[I2] ' 5分成交量
- Sheets("Sheet5").[I2] = Sheets("Sheet5").[H2] ' 重新設定前成交量
- End If
- End With
- End If
- End If
- End Sub
複製代碼 |
|
|
|
|
|
|
|