Board logo

標題: [發問] 新增欄位後 跳出"偵錯"視窗的原因? [打印本頁]

作者: kim595    時間: 2011-3-25 17:26     標題: 新增欄位後 跳出"偵錯"視窗的原因?

各位學長姐下午好 :)
這邊有遇到一個小小的問題,請路過的大俠們相救

我在新增欄位的時候(黃色部分)~跳出

執行階段錯誤'13':
型態不符合

雖然我都直接按"結束" 是沒有發生什麼問題
也可以新增

但還是想了解一下是哪裡出了問題
請各位前輩多提點了~感恩!!多謝 :)

[attach]5119[/attach]
作者: Hsieh    時間: 2011-3-25 20:31

回復 1# kim595


    直接按結束你的事件就無法在驅動了
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Intersect(Target, [$E$12:$E$65536]) Is Nothing Then Exit Sub 'e欄小寫轉大寫
  3. If Target.Count > 1 Then Exit Sub
  4. Application.EnableEvents = False
  5. Target = UCase(Target)
  6. Application.EnableEvents = True
  7. End Sub
複製代碼

作者: GBKEE    時間: 2011-3-25 20:49

回復 1# kim595
我在新增欄位的時候(黃色部分)~跳出
黃色部分 在哪裡 沒看見
作者: Hsieh    時間: 2011-3-25 21:05

回復 3# GBKEE


    是插入整列所以觸發程序後的Target無法被確認所以跳出錯誤訊息
作者: GBKEE    時間: 2011-3-25 21:18

回復 4# Hsieh
原來如此 沒有看清楚題意.謝謝指點
你加上  If Target.Count > 1 Then Exit Sub 來化解樓主問題
我將 Target 指定為第一個Cell  就沒問題了
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Intersect(Target.Cells(1), [$E$12:$E$65536]) Is Nothing Then Exit Sub 'e欄小寫轉大寫
  3. Application.EnableEvents = False
  4. Target.Cells(1) = UCase(Target.Cells(1))
  5. Application.EnableEvents = True
  6. End Sub
複製代碼

作者: kim595    時間: 2011-3-28 14:01

感謝兩位版主
經測試後已經沒有問題了
作者: chin15    時間: 2011-3-28 14:35

敢請教兩位版主
本版是否有發表過VBA除錯教學?
若有的話建議置頂,新手都很須要這方面的知識。




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)