2 個 ON ERROR GOTO ERROR 出現錯誤
- 帖子
- 262
- 主題
- 8
- 精華
- 0
- 積分
- 280
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- Office 2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- HK
- 註冊時間
- 2015-8-11
- 最後登錄
- 2025-3-24

|
個人建議應盡可能不使用 On Error..- Sub crosscheck_new_item()
- Application.Calculation = xlCalculationManual
- Dim i As Long
- On Error Resume Next
- Worksheets("2019 TRADING SOC NO.").Select
- If Err Then Err.Clear: GoTo error1
- For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = WorksheetFunction.VLookup(Worksheets("2019 TRADING SOC NO.").Range("E" & i).Value, Worksheets("成本 (2020.09.28)").Range("D:AL"), 35, 0)
- Worksheets("2019 TRADING SOC NO.").Range("M" & i).Value = "成本表"
- Next
- error1:
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = WorksheetFunction.VLookup(Worksheets("2019 TRADING SOC NO.").Range("E" & i).Value, Worksheets("期貨總匯 (2020.09.16)").Range("A:G"), 7, 0)
- If Err Then Err.Clear: GoTo error2
- Worksheets("2019 TRADING SOC NO.").Range("M" & i).Value = "期貨表"
-
- error2:
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = ""
- If Err Then MsgBox "Error has found"
- Application.Calculation = xlCalculationAutomatic
- End Sub
複製代碼 |
|
|
|
|
|
|
|
- 帖子
- 262
- 主題
- 8
- 精華
- 0
- 積分
- 280
- 點名
- 0
- 作業系統
- xp
- 軟體版本
- Office 2007
- 閱讀權限
- 20
- 性別
- 男
- 來自
- HK
- 註冊時間
- 2015-8-11
- 最後登錄
- 2025-3-24

|
首先你的程式碼 Worksheets("2019 TRADING SOC NO.") 跟本不存在
On Error Resume Next...功能是讓程式不理會錯誤繼續跑下去, On Error Goto ..跑到指定行繼續跑- Sub crosscheck_new_item()
- Application.Calculation = xlCalculationManual
- Dim i As Long, d As Object
- Set d = CreateObject("scripting.dictionary")
- For Each s In Sheets
- d(s) = "" '創建字典收氣所有頁名
- Next
- If Not d.exists("2019 TRADING SOC NO.") Then GoTo error1 '如果頁名"2019 TRADING SOC NO."不存在跑到指定行繼續跑
- 'On Error GoTo error1
- Worksheets("2019 TRADING SOC NO.").Select
- For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = WorksheetFunction.VLookup(Worksheets("2019 TRADING SOC NO.").Range("E" & i).Value, Worksheets("成本 (2020.09.28)").Range("D:AL"), 35, 0)
- Worksheets("2019 TRADING SOC NO.").Range("M" & i).Value = "成本表"
- Next
- error1:
- If Not d.exists("2019 TRADING SOC NO.") Then GoTo error2
- 'On Error GoTo error2
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = WorksheetFunction.VLookup(Worksheets("2019 TRADING SOC NO.").Range("E" & i).Value, Worksheets("期貨總匯 (2020.09.16)").Range("A:G"), 7, 0)
- Worksheets("2019 TRADING SOC NO.").Range("M" & i).Value = "期貨表"
- error2:
- If Not d.exists("2019 TRADING SOC NO.") Then GoTo 1000
- Worksheets("2019 TRADING SOC NO.").Range("L" & i).Value = ""
- 1000
- Application.Calculation = xlCalculationAutomatic
- End Sub
複製代碼 |
|
|
|
|
|
|
|