返回列表 上一主題 發帖

[發問] 請教此程序為何錯誤?

連續一直出現"重跑"??

If Time > [b2] + TIMEB Then
因為你的 [b2] 放在 module下, 而且沒有明確指定 [b2] 到底是 Sheet1.[b2] 還是 Sheet2.[b2],  還是 Sheet3.[b2].....
所以 EXCEL 自動幫你決定了
當你切換到SHEET1 時, EXCEL 自動把 [b2] 當成 Sheet1.[b2]
當你切換到SHEET2 時, EXCEL 自動把 [b2] 當成 Sheet2.[b2] (空值)

TOP

本帖最後由 t8899 於 2015-4-5 14:56 編輯
連續一直出現"重跑"??

If Time >  + TIMEB Then
因為你的  放在 module下, 而且沒有明確指定  到底是 S ...
bobomi 發表於 2015-4-5 14:39

我有指明啊 !
它不是 private
With Workbooks("book1.xls").Sheets("sheet1")
.Range("B2") = TimeValue(Now)

TOP

本帖最後由 bobomi 於 2015-4-5 15:01 編輯

[ 它是執行到那一行被停止的??如何確認它已被停止了?? ]

應該是要進入 Sub timestock() 之前,  Application.OnTime 就自動同時 Stop 了, 執行在內部所以你看不見

執行 Sub Test_01
步驟 (2) 能成功 , 步驟 (3) 卻失敗
就可以知道當  Application.OnTime Time + 1 / 86400, "AAA", , False '  執行 失敗時(發出 Error Msg 時)
就代表著  Timer For Sub AAA 早已經停止了
因為步驟 (2) 已經成功停止了 Timer For Sub AAA
所以步驟 (3) 你再停止1次就失敗了 , 此時 Application.OnTime 內部早就沒有 Timer For Sub AAA 這條 Link , Application.OnTime 因為找不到 Timer For Sub AAA 而發出 Error Msg


Sub Test_01()
On Error GoTo 0: On Error Resume Next
Application.OnTime Time + 1 / 86400, "AAA", , True  '(1)--> 執行 ok
If Err Then MsgBox "err #1"
On Error GoTo 0: On Error Resume Next
Application.OnTime Time + 1 / 86400, "AAA", , False  '(2)--> 執行 ok (Timer For Sub AAA 已經停止)
If Err Then MsgBox "err #2"
On Error GoTo 0: On Error Resume Next
Application.OnTime Time + 1 / 86400, "AAA", , False '(3)--> 執行 失敗
If Err Then MsgBox "err #3"
End Sub

TOP

我有指明啊 !
它不是 private
With Workbooks("book1.xls").Sheets("sheet1")
.Range("B2") = TimeVal ...
t8899 發表於 2015-4-5 14:54



If Time > [b2] + TIMEB Then

你的 [b2] 前面沒有 . 啊

此時的 [b2] 變成 Sheet2.[b2] = 空值

[b2] 加上 . 就好了

TOP

本帖最後由 t8899 於 2015-4-5 18:23 編輯
If Time >  + TIMEB Then

你的  前面沒有 . 啊

此時的  變成 Sheet2. = 空值

加上 . 就好了 ...
bobomi 發表於 2015-4-5 15:00

我看了好幾次,還是沒有看到,謝謝!

TOP

你可以用  菜單的搜尋   
搜尋 If Time > [b2] + TIMEB Then   
就可以找到

TOP

本帖最後由 t8899 於 2015-4-5 19:04 編輯
你可以用  菜單的搜尋   
搜尋 If Time >  + TIMEB Then   
就可以找到
bobomi 發表於 2015-4-5 18:53

抱歉,經常看電腦螢幕,尤其在寫程式不知不覺一直注視.......加速眼睛老化..年紀也大了........所以看不到.........
現在找到了

TOP

那個網址盤後測試是否一樣 ie 停留10分會造成excel整個速度慢下來
還是只有盤中才會 lag ?

TOP

那個網址盤後測試是否一樣 ie 停留10分會造成excel整個速度慢下來
還是只有盤中才會 lag ?
bobomi 發表於 2015-4-5 19:39

這網頁每5秒會自動update 一次,所以我連上一次然後開個副程式每隔5秒-60秒抓一次
每隔n秒抓一次,並不會造成lag, 是IE 連上後10分鐘才會lag, 從工作管理員看ie佔記憶體,時間越久記憶體佔越大
盤後我沒測試
  這網頁不一定要借用IE來抓,應該還有其他方法 像 XMLHTTP......... 不知您會嗎?可否賜教?

TOP

以下是用 XMLHTTP 抓出來的內容
可以看到有欄位名稱, 但抓不到數值
那個網頁的數值是用 javascript 事後補上來的
你用 IE 開那個網頁-> IE菜單 -> 另存新檔 ---> 存到 xxx.htm ---> 再把  xxx.htm 用 IE 打開 ---> 只見欄位, 看不見數值

整體市場         股票         基金         認購權證         認售權證
總委買數量        -        -        -        -        -
總委買筆數        -        -        -        -        -
總委賣數量        -        -        -        -        -
總委賣筆數        -        -        -        -        -
漲停委買數量        -        -        -        -        -
漲停委買筆數        -        -        -        -        -
漲停委賣數量        -        -        -        -        -
漲停委賣筆數        -        -        -        -        -
跌停委買數量        -        -        -        -        -
跌停委買筆數        -        -        -        -        -
跌停委賣數量        -        -        -        -        -
跌停委賣筆數        -        -        -        -        -

TOP

        靜思自在 : 人要知福、惜福、再造福。
返回列表 上一主題