RE:Contar registros antes de abrir formulario
Irene, existen las funciones agregadas de dominio (DSum(), DMax(), DMin(), DCount(), DLookUp()), estas pueden aplicarse como una expresión access o bien en código VBA. Yo prefiero en VBA. Me dices que tienes un Formulario, este formulario está basado en una Tabla/Consulta o expresión SQL. La idea es contar los registros de esa Tabla/Consulta de Origen del Registro
Dim ctaReg As Long 'Se define la variable ctaReg como entero largo
ctaReg = DCount("IdProducto" , "Tabla1") 'Se asigna a ctaReg la cuenta del campo IdProducto de la Tabla1
msgbox ctaReg 'Haces lo que quieres con el valor obtenido en la variable, en este caso lo desplegue como cuadro de mensaje, tambien lo puedes asignar a un cuadro de texto independiente en el formulario, etc.
yo colocaría esta rutina al abrir el formulario, es bastante rápida