- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
本帖最後由 c_c_lai 於 2013-7-27 07:10 編輯
回復 36# GBKEE
回復 32# stillfish00
回復 37# jackyliu
經仔細推敲 stillfish00 32# 的經驗建議,的確是問題發生的癥結所在,
茲將它稍稍整理,並回溫 Debug 的過程,確實如 stillfish00 所言,
在此順便也謝謝 stillfish00 的不吝指教。- 如要逐步執行 (F8) 的話,請把 D(E) 的監看式拿掉吧。 亦即將監看式視窗內的運算式 D(E) 移除。
- 1. 當字典用不存在的 Key 取回物件時會自動新增該 Key,這點在偵錯時看起來還是有效的....
- 你可以自己試試中斷後在即時運算視窗打 ?D("不存在的Key"),就會自動在 D 底下新增一個 item ..
- 2. 然後當你要逐步執行時,因為監看式視窗有設 D(E) 的運算式,則每一步執行時都會取回 D(E),
- 可是 E 一直都是存在的 Key 值嗎 ???
- 答案當然不是,當你程式執行到 For Each E 前一行或 Next 後一行,此時 E 如果為 "無",
- 於是它找不到這個 Key 又自動新增了,所以才會造成字典內的 Key(#) 也為 "無" 的原因。
- 3. 偵錯時若只用 "區域變數視窗" 來監看 D 值 (我原本也是這樣),
- 怎樣都不會遇到此 "型態不符" 的問題。 ( 在 D(E) 值若為 "無" 時的情況下 )
複製代碼 謝謝大家的經驗傳承! |
|