Visual Basic - Error 3021 VB

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Error 3021 VB

Publicado por Stella (2 intervenciones) el 07/02/2007 20:40:19
Desde Visual Basic debo acceder a un formulario Access , me permite hacerlo, incluso hacer lo que me interesa que es imprimir un listado mediante un botón de ese formulario Access, pero me tira un mensaje 3021 "No hay ningún registro activo", y marca la linea: pAccess.DoCmd.OpenForm "frmMenu", acFormDS
(En realidad da este error cuando oprimo el boton Salir de ese formulario Access)

Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
Select Case ButtonMenu.Key
Case "Anexion"
frmRecibe.Show 1
Case "Impresion"
Dim pAccess As New Access.Application
pAccess.OpenCurrentDatabase App.Path & "\bdRecibido.mdb", True
pAccess.DoCmd.OpenForm "frmMenu", acFormDS
pAccess.CloseCurrentDatabase
Set pAccess = Nothing
End Select
End Sub

Espero me puedan ayudar
Gracias....Stella
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error 3021 VB

Publicado por hector (67 intervenciones) el 07/02/2007 20:47:02
ese error es cuando no tienes registros en la base de datos asi que tienes que validar de que al no tener registros que no pase a esa linea, como ya abriste la base de datos el programa entra y no encuentra nada por eso te dice que no tiene registros activos, ami me arrojaba ese error pero estaba haciendo otra cosa, cuando buscaba y el dato no existia me arrojaba ese error y valide todo y ya no pasa nada
ojala te sirva lo que acabo de decir
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Error 3021 VB

Publicado por Pere (150 intervenciones) el 08/02/2007 12:41:43
Si no te quieres complicar comprobando las propiedades .BOF o .EOF
puedes poner, en el procedimiento, un control de errores:

Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
On Error Goto NoRegistros
' Aquí el resto de tu código
.
.

NoRegistros:
Select Case err.number
Case 3021
Exit Sub ' o Resume Next para continuar con la línea siguiente
End Select
End Sub

Espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar