- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
本帖最後由 c_c_lai 於 2016-4-13 05:36 編輯
回復 c_c_lai
可是C大我DDE是在第二列,我上傳的圖第二列有資料,第三列才出現N/A的不是嗎??
藍天麗池 發表於 2016-4-12 22:26 
在 Excel 一開始連上 DDE 時因系統尚未就緒 (DDE與券商軟體間),所以第二列接收值為 #N/A, 又因一開始時第三列資料為空,- If .Row = 2 Or .Row > 2 And .Value <> Range(E.Name).Value Then ' (各股總量有變動)
複製代碼 .Row = 2 (資料最位筆為第二列) 則逕行 ( #N/A) 寫入,接著當第二列接收到DDE接收值 (實際數據) 後,再次觸發
Worksheet_Calculate(),此時 .Row > 2 And .Value <> Range(E.Name).Value 便產生錯誤訊息了。- ' #N/A (DDE尚未啟動) -> Excel 一開始連上 DDE 時因系統尚未就緒,此時接收值為 #N/A,
- ' 當 .Row = 2 (資料最位筆為第二列) 又逢第二列傳入值為 #N/A,所以則逕行將 (#N/A) 直接寫入;
- ' 接著當第二列接收到DDE傳入值 (實際數據) 後,再次觸發 Worksheet_Calculate(),
- ' 此時 .Row > 2 And .Value <> Range(E.Name).Value 於比對時便產生錯誤訊息了。
- ' ----------------------------------------------------------
- ' Cells(Rows.Count, cts).End(xlUp).Value : 錯誤 2042 : Variant/Error
- ' 執行階段錯誤 '13': 型態不符合
- ' ----------------------------------------------------------
複製代碼 為了確保未來資料均能正確處理,在新的 "股票10C.xlsm" 的程式�堨[入了一行判斷。- For cts = 4 To 400 Step 4
- Set Rng = Cells(2, cts)
- If IsError(Rng.Value) Then Exit Sub ' 總量如為錯誤 (#N/A、#REF!),跳離不做處理
複製代碼
股票10C.rar (21.99 KB)
今早請直接用這支新的 "股票10C.xlsm" 做測試吧! |
|