Pregunta
¿Existe algún código que me permita averiguar, antes de abrir un formulario, si existen registros para mostrar, de manera que, en caso afirmativo, envíe un mensaje al usuario y cierre ese formulario?
Respuesta
Sí. Tal vez la manera más directa de hacerlo sea consultar el RecordsetClone del formulario y preguntar por el número de registros.
En el evento Al Cargar (Load) del formulario escribe este código:
Codigo
Private Sub Form_Load()
' si el número de registros es cero
If Me.RecordsetClone.RecordCount = 0 Then
' enviamos un mensaje
MsgBox "No existen registros relacionados", vbInformation
' cerramos el formulario actual
DoCmd.Close acForm, Me.Name
End If
End Sub
Créditos
con el fin de dar a conocer el trabajo de uno de los más grandes en el mundo de Access en español, y tras solicitar su permiso, replico este artículo de Juan M Afán de Ribera. Todos los derechos y autoría corresponden a él. Access & VBA FAQ – Cómo saber si un formulario tiene registros (archive.org)