Pasar un filtro para una consulta en un módulo
A ver, tengo un código repetido en varios formularios, y me gustaría centralizarlo en un módulo. Sin embargo, uno de los filtros de la instrucción SQL es variable.
Así, la función que he creado ha sido esta:
Public Function Prueba(FName As Form, NumFormato As Long, cmbFormato As String) FName.Genero1.RowSource = "SELECT [TGeneros].[Genero], [TLibros].[Estado], [TFormatos].[Formato] " _ & "FROM TFormatos INNER JOIN ((TGeneros INNER JOIN TSubgeneros ON [TGeneros].[ID] = [TSubgeneros].[Genero]) INNER JOIN TLibros ON [TSubgeneros].[ID] = [TLibros].[Subgenero]) ON [TFormatos].[ID] = [TLibros].[Formato] " _ & "GROUP BY [TGeneros].[Genero], [TLibros].[Estado], [TFormatos].[Formato] " _ & "HAVING ((([TLibros].[Estado]) = 'NumFormato') And (([TFormatos].[Formato]) = 'cmbFormato'))" _ & "ORDER BY [TGeneros].[Genero]" FName.Genero1 = "" FName.Requery End Function
Y el formulario, lo tengo así:
Call Prueba(Me, 4, "[Forms]![FPendientes]![Formato1]")
Pero el problema lo tengo con NumFormato y cmbFormato. Me los pilla como campos, y no sé cómo he de ponerlo para que me lo coja bien. También es cierto que esto no será si será posible hacerlo.
1 Respuesta
Respuesta de Sveinbjorn El Rojo
2