- 帖子
- 835
- 主題
- 6
- 精華
- 0
- 積分
- 915
- 點名
- 0
- 作業系統
- Win 10,7
- 軟體版本
- 2019,2013,2003
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2010-5-3
- 最後登錄
- 2025-7-5
|
2#
發表於 2015-5-5 22:36
| 只看該作者
本帖最後由 luhpro 於 2015-5-5 22:39 編輯
DEAR SIR
執行如下 出現 "堆疊空間不足" ???
煩不吝賜教 THANKS ROBERT 05/05
Private Sub W ...
rouber590324 發表於 2015-5-5 16:04 
那是因為工作表變更事件一直被觸發,
自然很快就Over Flow了.
這類情形可以用單步執行來發現問題點:
1. 先對 檔案名稱 這一行設中斷點.
2. 變更此工作表的內容觸發此程序.
3. 依次按 F8 按鍵觀察程式執行步驟.
你會發現程式是這樣跑的-
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
檔案名稱
Sub 檔案名稱()
...
Sheet51.Range("AA2") = M
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
...
(無限迴圈)
解決的方法是在不應觸發 SheetChange 程序時就不要觸發:- Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
- Application.EnableEvents = False
- 檔案名稱
- AA
- Application.EnableEvents = True
- End Sub
複製代碼 |
|