Dar formato a un informe a través de VBA
Tengo creado un informe al que accedo a través de un formulario donde elijo varias opciones en un desplegable (cuenta contable, cliente, año y período). El código, bastante largo (aunque lo he cortado para que me quepa este mensaje), es el siguiente:
Public Function VerInformeCuentaContableClienteAñoYPeriodo(FName As Form, MrcPeriodo As String, CuentaContable As String, Cliente As String, Año As String, Periodo As String)
If Len(miFiltro) > 0 Then
miFiltro = Right(miFiltro, Len(miFiltro) - 4)
End If
If miFiltro = "" Then
DoCmd.OpenReport "IInformeDeIngresos", acViewPreview
Else
DoCmd.OpenReport "IInformeDeIngresos", acViewPreview, , miFiltro, , MiArgumento
End If
Reports("IInformeDeIngresos").EncabezadoMes.Visible = True
Reports("IInformeDeIngresos").EncabezadoTrimestre.Visible = False
Reports("IInformeDeIngresos").EncabezadoAño.Visible = True
Reports("IInformeDeIngresos").PieMes.Visible = True
Reports("IInformeDeIngresos").PieTrimestre.Visible = False
Reports("IInformeDeIngresos").PieAño.Visible = True
Reports("IInformeDeIngresos").MesAño.Visible = True
Reports("IInformeDeIngresos").TrimestreAño.Visible = False
Case 2
Reports("IInformeDeIngresos").EncabezadoMes.Visible = False
Reports("IInformeDeIngresos").EncabezadoTrimestre.Visible = True
Reports("IInformeDeIngresos").EncabezadoAño.Visible = True
Reports("IInformeDeIngresos").PieMes.Visible = False
Reports("IInformeDeIngresos").PieTrimestre.Visible = True
Reports("IInformeDeIngresos").PieAño.Visible = True
Reports("IInformeDeIngresos").MesAño.Visible = False
Reports("IInformeDeIngresos").TrimestreAño.Visible = True
End Select
End If
End FunctionMi problema es que si llamo a esta función desde el formulario, al cerrar el informe la base de datos se queda bloqueada y tengo que cerrarla a lo bestia, además de que tarda mucho en cargar el informe. Así que había pensado en añadir todo el código referente a ocultar/mostrar distintas secciones del informe al propio informe. Open.Args lo estoy usando para pasarle el caption del informe. ¿Cómo hago entonces para pasar los valores de cada una de las variables que utilizo en los condicionales (cuentacontable, cliente, año y período)?