【发布时间】:2014-04-15 11:59:37
【问题描述】:
嘿,我正在使用此代码从 Excel 文件更新 Access 表。
On Error GoTo Boucle2
row = 1 ' the start row in the worksheet
Do While Not IsEmpty(Worksheets("Temp").Range("A" & row))
With adoRec
If Worksheets("Temp").Range("A" & row).Value = "Processed" Then
.AddNew
.Fields("TRADE_ID") = Worksheets("Temp").Range("B" & row).Value
.Fields("Tkt") = Worksheets("Temp").Range("C" & row).Value
.Update
ElseIf Worksheets("Temp").Range("A" & row).Value = "AmendValid" Then
adoRec.Filter = "TRADE_ID='" & Worksheets("Temp").Range("B" & row).Value & "'"
.Fields("Tkt") = Worksheets("Temp").Range("C" & row).Value
.Update
End If
End With
Boucle2 :
row = row + 1
Loop
我想处理一个常见错误...。如果TRADE_ID 已经存在...我得到一个普通的Runtime Error '-2147217887 (80040e21)',它说这个TRADE_ID 已经存在并且它不支持重复。
我想通过转到循环中的下一行来忽略此错误,并可能添加一个 msgbox 说This TRADE_ID already exists
非常感谢
【问题讨论】: