Error empleando filtro con VBA sobre un formulario
Publicado por Daniel (3 intervenciones) el 26/08/2019 15:47:46
Hola,
Dispongo de un formulario que muestra una serie de datos provenientes de una tabla.
He creado una serie filtros en VBA que toman la variable desde cuadros combinados.
Por ejemplo una columna puede contener palabras como: Averia, calibracion, Lentitud.. y cuando modifico el cuadro combinado se activa el evento y me filtra correctamente, a continuacion pongo el codigo que utilizo:
Sin embargo, cuando quiero filtrar por otra columna llamada recurso que contiene palabras como: L2J001, L2J002... me aparece:
Ell error '3075' en tiempo de ejecucion.
Error de sintaxis (falta de operador) en la expresion de consulta 'AND Recurso ="L2J001"
Este es el codigo que empleo para este cuadro combinado:
Cuando presiono en depurar me marca la fecha amarilla en la frase: Me.Filter = miFiltro
Alguien podria aportar algo de luz??
Muchas gracias
Dispongo de un formulario que muestra una serie de datos provenientes de una tabla.
He creado una serie filtros en VBA que toman la variable desde cuadros combinados.
Por ejemplo una columna puede contener palabras como: Averia, calibracion, Lentitud.. y cuando modifico el cuadro combinado se activa el evento y me filtra correctamente, a continuacion pongo el codigo que utilizo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Function filtrando()
Dim T1, T2, T3, T4, T5, miFiltro As String
Dim miContador As Integer
Me.FilterOn = False
If Me.cboTipo_evento <> "" Then
If miContador = 0 Then
miContador = 1
T1 = "Tipo_Evento= """ & Me.cboTipo_evento & """"
Else
T1 = " AND Tipo_Evento= """ & Me.cboTipo_evento & """"
End If
End If
miFiltro = T1 & T2 & T3 & T4 & T5
'Lo aplicas al formulario
Me.Filter = miFiltro
Me.FilterOn = True
End Function
Sin embargo, cuando quiero filtrar por otra columna llamada recurso que contiene palabras como: L2J001, L2J002... me aparece:
Ell error '3075' en tiempo de ejecucion.
Error de sintaxis (falta de operador) en la expresion de consulta 'AND Recurso ="L2J001"
Este es el codigo que empleo para este cuadro combinado:
1
2
3
4
5
6
7
8
If Me.cboRecurso <> "" Then
If miContador = 0 Then
miContador = 1
T5 = "Recurso= """ & Me.cboRecurso & """"
Else
T5 = " AND Recurso= """ & Me.cboRecurso & """"
End If
End If
Cuando presiono en depurar me marca la fecha amarilla en la frase: Me.Filter = miFiltro
Alguien podria aportar algo de luz??
Muchas gracias
Valora esta pregunta


0