Sobre base de datos access

Estando en un formulario de entrada, aperturo el de entrada de datos, introducidos los datos, deseo imprimirlo antes de pasarlo a las tablas, pero tiene que ser en otro formulario por el formato y una vez que realice la impresión cerrase los dos formularios anteriores, volviendo al formulario de entrada que es diferente.

Respuesta
3

Salvo que tu formulario de entrada de datos sea un formulario independiente y hagas el traspaso a la tabla con algún procedimiento (sql, recordset...) los datos se guardan en el momento de escribirlos.

Si trabajas con formularios independientes, te bastaría con añadir al principio del proceso de guardado una línea para que te abra el formulario a imprimir :

DoCmd. OpenForm "nombreformulario",, condición,, acDialog

Donde en vez de condición tendrás que poner algo que identifique el registro,  por ejemplo: "Id=" & Me. Id

De la misma forma, después del código que te guarda los datos, añadirías dos líneas para cerrar los formularios :

DoCmd. Close acForm, "Formulario1"

DoCmd. Close acForm, "Formulario2"

Si no usas formularios independientes, puedes poner un botón y usas los mismo códigos.

Ahora bien, no te recomiendo que uses un formulario como objeto a imprimir, pues para eso están los informes.

Buenos días, después de varios días intentando hacer que funcione no consigo nada, he tratado de varias formas pero nada. Según entiendo donde pone "nombreformulario”, yo he puesto el que quiero abrir para que se imprima "F IMPRIMIR" y donde pones,, condición,, he puesto NombreReceta que es el campo clave de la tabla y que está en el formulario.

Entiendo que lo he entendido mal pues no consigo nada.

En resumidas cuentas lo que hace el formulario es aperturarse y cuando pongo el nombre de la receta comprueba en la tabla si esta, si es así, la visualiza y si no está permite que rellenes todos los campos, al salir inscribe todos los campos en la tabla” T RECETAS”, entonces lo que pretendo es que cuando salga ponga estos mismos datos en otro formulario “F IMPRIMIR” el cual se imprima y se cierre, saliendo al formulario de entrada “F ENTRADA”.

Private Sub SALIR_Click()

On Error GoTo Err_SALIR_Click

DoCmd.OpenForm "F IMPRIMIR", , & Me![NombreReceta], , acDialog

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

        DoCmd.Close

Exit_SALIR_Click:

    Exit Sub

Err_SALIR_Click:

    MsgBox Err.Description

    Resume Exit_SALIR_Click

End Sub

Si puede echarme otra mano te lo agradecería. Saludos Manuel

Lo que tu pones en vez de condición (& Me. NombreReceta), no es ninguna condición, porque no haces ninguna igualdad, desigualdad o comparación...

Si lo haces así, seguro que te funciona (si los campos se llaman así):

DoCmd.OpenForm "F IMPRIMIR", , "NombreReceta='" & Me![NombreReceta] & "'", , acDialog

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas