Я вижу код ошибки, подобный этому, в моем Access 2000 VBA:
-2147352567-Запись в «[SomeTable]» была удалена другим пользователем.
Итак, 2 вопроса:
1) Как мне обработать / избежать такого кода ошибки?
2) Может кто-нибудь объяснить, почему я получаю код ошибки, которого нет в документации MS? И есть ли способ расшифровать этот код? Это комбинация нескольких кодов? Будем благодарны за любые рекомендации по этой теме.
Public Sub Form_Open(Cancel As Integer)
' Check for unposted record / regardless of Date / Shift
' If there is an unposeted record goto it
Dim lCheck
Dim sPress As String
On Error GoTo Form_Open_Err
GotoRecord:
If bPressConsumptionOpenRan = True Then
lCheck = DLookup("PressConsumptionID", "spI_GetUnPostedRecord")
If Not IsNothing(lCheck) Then
Me.txtPressConsumptionID.SetFocus
DoCmd.FindRecord lCheck
Else
DoCmd.SetWarnings False
DoCmd.OpenQuery ("spI_InsertNewPressConsumption")
Me.Requery
DoCmd.SetWarnings True
End If
End If
Form_Open_Exit:
Exit Sub
Form_Open_Err:
sErrMsg = Err.Number & "-" & Err.Description
MsgBox sErrMsg, vbCritical + vbOKOnly + vbInformation, "Program Error"
Так что я только что закомментировал
При ошибке GoTo
строк в Form_Open (), Form_Load () и Form_Activate (), и до сих пор нет вызова отладчика. Эта ошибка отображается при открытии БД, поэтому я понятия не имею, где еще ошибка может быть в коде.
А вот код для IsNothing:
Public Function IsNothing(vCheck As Variant) As Boolean
On Error GoTo IsNothing_Err
If IsNull(vCheck) Then IsNothing = True: Exit Function
If IsEmpty(vCheck) Then IsNothing = True: Exit Function
If Trim(vCheck) = "" Then IsNothing = True: Exit Function
IsNothing_Err:
IsNothing = False
End Function
Теперь я получаю похожую ошибку в Form_Current ():
Private Sub Form_Current()
Dim sUser As String
On Error GoTo Form_Current_Err
If IsNothing(Me.dtpUsageDate) Then
Me.dtpUsageDate = Date 'This line throws error.
End If
...Ommitted to save space. Not relevant...
Form_Current_Err:
sErrMsg = Err.Number & "-" & Err.Description
MsgBox sErrMsg, vbCritical + vbOKOnly + vbInformation, "Program Error"
Resume Form_Current_Log
Form_Current_Log:
On Error Resume Next
Call LogError(sErrMsg, "PressConsumptions_Form_Current")
GoTo Form_Current_Exit
End Sub
Сообщение об ошибке:
-2417352567-В этом элементе управления нет объекта.
Связано ли это сообщение с другим, которое мы видели? Есть мысли по поводу исправления?