Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

funcion "contiene" en Access

3,393 views
Skip to first unread message

Nuria Martínez

unread,
Nov 14, 2002, 3:57:27 AM11/14/02
to
Hola grupo!!!
Mi caso es el siguiente. Tengo una tabla con 5 campos de distinto formato,
numerico, fecha/hora, texto...... . Me gustaría hacer un filtro por el campo
texto de la siguiente manera. En ese campo texto viene escrito un mensaje
que contiene un número, (por ejemplo "0646 DESDOBLAMIENTO DE CABLES EN
AUTOMATICO"); si el numero coindice con 502, 504, 510 o 622, no quiero que
aparezca, pero si es otro número o no tiene número debe aparecer. Estaba
pensando en hacer una consulta y utilizar alguna función que tenga de
criterio:
si parte del campo contiene "502" o "504" ......... entonces......
pero no tengo mucha experiencia en Access. Me podríais ayudar?
Muchisimas gracias de antemano.
Saludos,
Nuria


Juan M. Afan de Ribera

unread,
Nov 14, 2002, 4:47:58 AM11/14/02
to
Hola Nuria,

te comento una solución.

En la pestaña módulos, abre un módulo nuevo o si quieres abre uno que ya
tengas hecho, es indiferente y copia y pega esta función:

Function SeleccionarTexto(fldTexto As String, ParamArray textos() As
Variant) As Integer
Dim i As Integer

For i = 0 To UBound(textos())
If InStr(fldTexto, textos(i)) Then
SeleccionarTexto = 1
Exit Function
End If
Next

End Function

después crea la consulta que comentabas y en la casilla criterios, ponle
algo como esto:

SeleccionarTexto([texto];"502";"504";"510";"622")=0

que lo que hará será llamar a la función de arriba pasándole como
parámetros, por un lado el campo de tipo texto [texto] (con el nombre que tú
le hayas puesto, claro), y por otro lado, los valores por los que necesites
filtrar. Es decir, que no mostrará los registros cuyo campo [texto],
contenga cualquiera de las cadenas que van entrecomilladas. Si quieres que
sea al revés, o sea que muestre sólo los registros que contengan esas
cadenas, en la casilla criterios ponle esto otro (con los valores que
necesites):

SeleccionarTexto([texto];"501";"502";"503";"622")=1

puedes pasarle tantos valores de comparación como desees.

Espero que te sirva.

--
Saludos desde Barcelona
Juan M. Afan de Ribera
[MVP - Ms Access]


"Nuria Martínez" <nuri...@yahoo.es> escribió en el mensaje
news:uXJmGu7iCHA.4128@tkmsftngp08...

Nuria Martínez

unread,
Nov 14, 2002, 6:08:57 AM11/14/02
to
Muchísimas gracias Juan. Funciona perfectamente.
Saludos desde Logroño,
Nuria

"Juan M. Afan de Ribera" <happy...@ya.com> escribió en el mensaje
news:#7xcsK8iCHA.1112@tkmsftngp09...

0 new messages