Olá. Tenho um formulário que é utilizado como um filtro de pesquisa. Quando o item procurado é localizado no BDA retorna o relatório corretamente. Entretanto quando o item procurado não é localizado, ele informa erro de execução e fecha o BDA.
O código que estou usando segue abaixo, poderiam me ajudar a efetuar a modificação no código, para quando o item procurado não for localizado, apenas informar que o item não foi localizado e não fechar o BDA?.
Obrigado.
Código:
Option Compare Database
Private Sub Comando2_Click()
Dim stDocName As String
Dim accobj As AccessObject
On Error GoTo Err_Comando2_Click
stDocName = "RtlPNS1"
'This function closes the report if the report is open and then re-opens the report.
Set accobj = Application.CurrentProject.AllReports.Item(stDocName)
If accobj.IsLoaded Then
If accobj.CurrentView = acCurViewPreview Then
DoCmd.Close acReport, stDocName
DoCmd.OpenReport stDocName, acViewReport
End If
Else
DoCmd.OpenReport stDocName, acViewReport
End If
Exit_Comando2_Click
Exit Sub
Err_Comando2_Click:
MsgBox err.Description
Resume Exit_Comando2_Click
End Sub
O código que estou usando segue abaixo, poderiam me ajudar a efetuar a modificação no código, para quando o item procurado não for localizado, apenas informar que o item não foi localizado e não fechar o BDA?.
Obrigado.
Código:
Option Compare Database
Private Sub Comando2_Click()
Dim stDocName As String
Dim accobj As AccessObject
On Error GoTo Err_Comando2_Click
stDocName = "RtlPNS1"
'This function closes the report if the report is open and then re-opens the report.
Set accobj = Application.CurrentProject.AllReports.Item(stDocName)
If accobj.IsLoaded Then
If accobj.CurrentView = acCurViewPreview Then
DoCmd.Close acReport, stDocName
DoCmd.OpenReport stDocName, acViewReport
End If
Else
DoCmd.OpenReport stDocName, acViewReport
End If
Exit_Comando2_Click
Exit Sub
Err_Comando2_Click:
MsgBox err.Description
Resume Exit_Comando2_Click
End Sub