Access - Imprimir distintos informes a través de un botón

Tengo una BD en access, y me gustaría poder imprimir todos los informes que necesito a través de un botón. El problema que hay es que no siempre son los mismos informes, varia por una condición anterior la cual es un Numero, me gustaría que fuera más o menos, Si x=5>Imprimir, si x=!10 no imprimir, Si x=15 imrpimir. El problema es que he tratado de hacerlo con if y Else If y solo me muestra el primero, lo tengo puesto asi, 

Private Sub AllForms_Click()

If elemento = 5 Then
DoCmd.OpenReport "CAMPINFREGCELDACOM2LP", acViewPreview, , "[2LP_Elemento]=" & Me.ED_Elemento & " AND " & "[Direccion]='" & Me.ElegirDireccion& "' AND " & "[2LP_FechaRegistro]=#" & Format(Me.ED_FechaRegistro, "mm/dd/yyyy") & "#"
ElseIf elemento = 10 Then
DoCmd.OpenReport "CAMPINFREGECELDAINTAUTOMATIC", acViewPreview, , "[AUT_Elemento]=" & Me.ED_Elemento & " AND " & "[Direccion]='" & Me.ElegirDireccion& "' AND " & "[AUT_FechaRegistro]=#" & Format(Me.ED_FechaRegistro, "mm/dd/yyyy") & "#"

2 respuestas

Respuesta
2

Partiendo de la premisa de que no se sabe donde está eso de elemento, o si el valor es exactamente 5 ó 10 ó 15.

Primero, dices que si elemento=5 imprimir, pero en la instrucción pones acviewpreview. Si quieres que lo imprima directamente pon acnormal o simplemente déjalo en blanco.

Segundo, las comillas delante del corchete de dirección no son necesarias, como tampoco el propio corchete. Igual que las comillas delante de [2LP....

Tercero, en el caso de que elemento sea un intervalo de valores deberías usar

Select case elemento

case is=1,2,3,4,5

lo que sea

case is=6,7,8,9,10

Otra cosa

...

end select

Respuesta
1

Aitor: He leído la respuesta de ICUE y poco tengo que añadir a ella porque coincido.

Otro tema aparte es el Private Sub AllForms >> Enprincipio no debe causar problemas, pero el uso de palabras reservadas en Nombre de Objetos, puede hacer que surjan.

AllForms es la Colección de Formularios de Access, y según veo se la adjudicas a un Botón de Comando.

A mi modo de verlo sería mejor >> BtnImprime o si quieres BtnAllForms.

Dado que la verdadera respuesta la da ICUE, no hace falta que valores ésta mía.

Un saludo >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas