- 帖子
- 552
- 主題
- 3
- 精華
- 0
- 積分
- 578
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- office 2010
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2015-2-8
- 最後登錄
- 2024-7-9
  
|
2#
發表於 2015-12-8 17:55
| 只看該作者
本帖最後由 lpk187 於 2015-12-8 17:57 編輯
回復 1# morris_lth
Worksheet_Change是變更工作表中的儲存格時會發生此事件
而Cells(I, 2) = Application.VLookup(Cells(I, 1), Range("D1:E10"), 2)而正是做變更的動作,當然會進入無線迴圈入中
所以必須要在這列之前寫Application.EnableEvents = False 來禁止做觸發動作
之後寫Application.EnableEvents = True 來重新啟動觸發動作
Application.EnableEvents = False
For I = 1 To X
Cells(I, 2) = Application.VLookup(Cells(I, 1), Range("D1:E10"), 2)
Next I
Application.EnableEvents = True |
|