Problema con formulario y subformulario access

Mi pregunta es como puedo imprimir mediante código un formulario con su subformulario, el subformulario esta relacionado por el campo albarán, (albarán es el nº) y en el subformulario ya me aparece y muestra todos los registros de ese nº de albarán, ¿el problema es como hago para imprimir solo el que tengo presente? El albarán nº actual con el informe que ya esta diseñado y de nombre albarane.

2 respuestas

Respuesta
1

Si te tuviera que aconsejar, en cualquier evento, por ejemplo, en de Al hacer clic de un botón crearía un procedimiento de evento y entre Private sub y End sub escribiría

me.recordsource="select * from Ventas where albaran=" & me.albaran & ""

Docmd. Printout

Me explico, la primera línea hace que el origen de registros del formulario sólo sea aquel registro de la tabla origen del formulario( en este caso la he llamado ventas) cuyo número de albarán coincida con el que está viendo en ese momento. Con lo que te deja el formulario reducido a un único registro.

La segunda línea, te imprime el objeto activo y como sólo tiene un registro.

He supuesto que Albaran es número, si fuera texto, la instrucción sería la misma excepto

......whre Albaran ='" & me.albarán & "'"

Si lo que quieres es imprimir un informe, llamado, por ejemplo, Albaranes olvida todo lo anterior y la instrucción sería

docmd.openreport"Albaranes",acnormal,,"albaran='" & me.albaran & ""

Es decir, imprime directamente el informe Albaranes en aquel registro en que su numero de albarán coincida con el que figura en ese momento en el formulario

Respuesta
1

En el informe se le puede aplicar como filtro al campo 'Albarán' que sea igual al campo 'Albarán' del formulario y solo mostrara los datos del registro activo en el formulario.

Con el informe en su vista diseño en sus propiedades, pestaña datos, en el campo Filtro:

[Albaran]= Forms.[nombre del formulario].[Albaran]

Solo queda activar la propiedad 'filtro al cargar' que por defecto esta a No a un: SI

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas