error 3075 en tiempo de ejecución. Error de sintaxis (falta operador) en la expresión de consulta
Publicado por Carlos (17 intervenciones) el 08/04/2020 13:01:54
Buenos días,
Tengo un formulario que filtra una serie de registros. Cada registro es una caja, con sus correspondientes campos (codigo archivador, nombre unidad, serie documental, fecha inicio , fecha fin,..)
El usuario puede realizar un primer filtro por nombre unidad y serie documental de las cajas, seleccionado las opciones en dos cuadros combinados y ejecutando el siguiente código:
Este filtro va muy bien.
A continuación, deseo hacer un filtro por fechas sobre el resultado del filtro anterior.
El usuario introduce en formato fecha corta la fecha inicial y la fecha final en dos cuadros de texto.Luego clica en un botón que ejecuta el siguiente código.
Me hace el filtro por fechas correctamente. El problema es que me hace el filtro por fechas sobre la totalidad de los registros, no sobre el resultado del filtro anterior.
He hecho este código para resolver la cuestión:
Pero me aparece el siguiente mensaje cuando lo ejecuto:
Se ha producido el error 3075 en tiempo de ejecución. Error de sintaxis (falta operador) en la expresión de consulta.
¿Alguien sabe cómo solucionarlo?
Muchas gracias.
Tengo un formulario que filtra una serie de registros. Cada registro es una caja, con sus correspondientes campos (codigo archivador, nombre unidad, serie documental, fecha inicio , fecha fin,..)
El usuario puede realizar un primer filtro por nombre unidad y serie documental de las cajas, seleccionado las opciones en dos cuadros combinados y ejecutando el siguiente código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim Serie_documental As String
Dim Nom_unitat_vigent As String
Dim miFiltro As String
Dim rst As Recordset
Serie_documental = Nz(Me.Cuadro_combinado31.Value, "")
Nom_unitat_vigent = Nz(Me.Cuadro_combinado33.Value, "")
If Serie_documental <> "" Then
miFiltro = "[Serie documental]='" & Serie_documental & "'"
End If
If Nom_unitat_vigent <> "" Then
miFiltro = miFiltro & " AND [Nom unitat vigent] ='" & Nom_unitat_vigent & "'"
End If
Me.Filter = miFiltro
Me.FilterOn = True
Set rst = Me.Recordset.Clone
If rst.RecordCount = 0 Then
MsgBox "No se ha encontrado ninguna caja", vbInformation, "Mensaje"
End If
Este filtro va muy bien.
A continuación, deseo hacer un filtro por fechas sobre el resultado del filtro anterior.
El usuario introduce en formato fecha corta la fecha inicial y la fecha final en dos cuadros de texto.Luego clica en un botón que ejecuta el siguiente código.
1
2
Me.Filter = "Fecha inicio]>=#" & Me.Texto58 & "# AND [Fecha final]<#" & Me.Texto60 & "#"
Me.FilterOn = True
Me hace el filtro por fechas correctamente. El problema es que me hace el filtro por fechas sobre la totalidad de los registros, no sobre el resultado del filtro anterior.
He hecho este código para resolver la cuestión:
1
Me.Filter = "[Nom unitat vigent]=" & Me.Cuadro_combinado33 & " AND [Serie documental] ='" & Me.Cuadro_combinado31 & "' AND [Fecha inicio]>=#" & Me.Texto58 & "# AND [Fecha final]<#" & Me.Texto60 & "#"
Pero me aparece el siguiente mensaje cuando lo ejecuto:
Se ha producido el error 3075 en tiempo de ejecución. Error de sintaxis (falta operador) en la expresión de consulta.
¿Alguien sabe cómo solucionarlo?
Muchas gracias.
Valora esta pregunta


0