Buscar cadena con buildcriteria

02/04/2013 - 01:10 por Wally | Informe spam
Estoy tratando de usar buildcriteria con los resultados de un combobox el problema es que tengo registros que incluyen una "coma" y me genera un error, por ejemplo (solo lo que esta dentro de las comillas):

"Empresa 1, S. A. de C. V."
"Empresa 2, S. A."

El criterio que trato de armar es para filtrar los resultados de un formulario en vista de tabla.

Ya he hecho algunas pruebas y el problema lo genera la "coma", ahora bien, la más fácil sería quitarle la "coma" a los registros en la tabla...

¿Cómo se pueden construir este tipo de criterios teniendo la "coma"?, gracias de antemano por su aportación...

Preguntas similare

Leer las respuestas

#1 José Mª Fueyo
02/04/2013 - 12:13 | Informe spam
Hola Wally
No nos dices que versión de Access utilizas.
¿Probaste a reemplazar la "," por un "?", como carácter comodín?

Salu2
José Mª Fueyo
[MS MVP Access]
Respuesta Responder a este mensaje
#2 Emilio
02/04/2013 - 18:30 | Informe spam
¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
Hola!
para salvar ese problema hace años que "rediseñe" BuildCriteria

'*******************************************************************************
'* BuildCriteria
'* permite reemplazar la función BuildCriteria original, "salvando" los
'* inconvenientes que esta presenta con ciertos caracteres, y, o, (, ), . &
'* he respetado el nombre y formato originales con objeto de que sea
totalmente
'* transparente al usuario
'* Argumentos: strCampo => Nombre del campo
'* dbTipo => tipo de campo
'* strExpresion => Criterio que debe cumplirse
'* blnClasica => (opcional True) utiliza directamente la
función
'* original o no (por defecto si)
'* uso: strCadena = BuildCriteria("Campo", dbText, "=" & "Juan y Pedro")
'* devuelve Campo="Juan" And Campo="Pedro"
'* strCadena = BuildCriteria("Campo", dbText, "=" & "Juan y Pedro",
False)
'* devuelve Campo="=Juan y Pedro"
'* http://www.mvp-access.es/emilio/
'* Si utilizas este código, respeta la autoría y los créditos
'* ESH 12/11/06 18:51
'*******************************************************************************

Public Function BuildCriteria(strCampo As String, dbTipo As DataTypeEnum,
strExpresion As String, Optional blnClasica As Boolean = True) As String

If Not blnClasica Then
strExpresion = Application.BuildCriteria(strCampo, dbTipo, "=" & """" &
strExpresion & """")
Else
strExpresion = Application.BuildCriteria(strCampo, dbTipo, "=" &
strExpresion)
End If

' devuelvo el resultado
BuildCriteria = strExpresion
End Function ' BuildCriteria

en la ventana inmediato:
?BuildCriteria("Empresa",dbChar, "Empresa 1, S. A. de C. V.")
Empresa="Empresa 1, S. A. de C. V."

Saludos a todos desde Huelva

Emilio [MS-MVP Access 2006/11]
http://www.mvp-access.com/foro
http://www.mvp-access.es/emilio
Respuesta Responder a este mensaje
#3 Wally
08/04/2013 - 23:33 | Informe spam
Gracias por el apoyo la solución me funciono a la perfección...


El lunes, 1 de abril de 2013 17:10:27 UTC-6, Wally escribió:
Estoy tratando de usar buildcriteria con los resultados de un combobox el problema es que tengo registros que incluyen una "coma" y me genera un error, por ejemplo (solo lo que esta dentro de las comillas):



"Empresa 1, S. A. de C. V."

"Empresa 2, S. A."



El criterio que trato de armar es para filtrar los resultados de un formulario en vista de tabla.



Ya he hecho algunas pruebas y el problema lo genera la "coma", ahora bien, la más fácil sería quitarle la "coma" a los registros en la tabla...



¿Cómo se pueden construir este tipo de criterios teniendo la "coma"?, gracias de antemano por su aportación...
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida