Access ¿Se pueden comparar dos cuadros de texto?

Tengo 2 cuadros de texto, text1 y text2... En text1 escribo 300 y en text2 escribo 50, cuando uso la regla en el formato condicional text2<text1 pinta el cuadro de rojo, no pinta el cuadro de rojo, lo que he notado es que nada más me compara el primer caracter, porque si le pongo a text2 del 1 al 29 si me pinta el cuadro de texto en rojo, pero si le pongo 30 en adelante, ya no me lo pinta. ¿Cómo puedo resolver este problema en la ventana formato condicional?...

1 respuesta

Respuesta
1

Donnovan : Creo que no se trata del condicional, sino del tipo de datos que estás manejando.

Si lo TextBox son independientes (sin Origen en Tabla o Consulta), tienes que darles Formato numérico y si son dependientes has de dar formato a los campos de la Tabla o consulta Origen.

Si así no te acaba de funcionar miraremos que no haya ora causa. Mis saludos >> Jacinto

Donnovan: Se me olvidaba comentarte que en las Regás del Formato Condicional, y en éste caso concreto, has de elegir la Opción de >> La Expresión es :: [Txt2]<[Txt1]

La regla que te he citado está en Txt2. Un saludo >> Jacinto

Gracias por responder Jacinto. Mira, te aclaro un poco más algunos puntos...los dos textbox estan en un formulario de donde obviamente tengo una tabla llamada productos. Dichos textbox son de tipo texto ya que en el textbox2 tengo varias reglas para que me cambie de color según sea lo escrito en ella, la única regla que no me respeta es comparar números, como lo mencioné arriba...si escribo 300 en el text1 y 50 en el text2 no me realiza correctamente la regla, como lo menciono también en la parte de arriba. Insisto una vez más, los campos en mi tabla son de tipo texto, ¿qué estoy haciendo mal?, o ¿hay alguna otra sintaxis para comparar textos?, o ¿de que otra forma puedo hacer mi sintaxis?...de ante mano gracias nuevamente por la pronta respuesta.

Donnavan: Si los datos son tipo texto y que yo sepa, los operadores que actuan son = y <>

Lo que no acabo de ver es la necesidad de usar el > o el <, pero tus razones tendrás.

Lo que se me ocurre es que si eventualmente tu pones números y quieres comparar sus valores, justamente los trates como valores o sea Val([Txt2])<Val([Txt1])

Ya me contarás y si quieres me aclaras la razón de usar el > o el < en comparar textos. Un saludo >> Jacinto

Gracias Jacinto por tu respuesta. Lamentablemente no me funciono del todo pero es bueno aprender y saber que existe una función con esa propiedad. Te comento para aclarar tu duda, en el textbox1 introduzco un valor numérico (10, 24, 105, 600, etc.) y en el textbox2 introduzco un valor ya sea numérico o de tipo texto (1x200, Set 400, S2 180), pero a veces en textbox2 introdusco valores numéricos también (10, 3, 2, 50, 678) de ahí que quería hacer la comparación de text1 y text2 con valores numéricos porque una de las reglas en el formato condicional es que text2 sea menor que text1 para que la casilla se pinte de color rojo, si aparece una X como en el ejemplo del parentesis (1x200) que se pinte de color azul, si aparece una cadena (Set 400) se pinte de color morado, y así con varias reglas, pero una de ellas era el valor menor a....lo malo es que no me respeta la regla  Val([Txt2])<Val([Txt1]) que tu me mandaste ya que si coloco Set 400, me toma el valor de 400 y no aplica la regla que se ponga morado, ya que el valor es mayor que text1...gracias de cualquier manera. 

Donnovan: Si no son demasiados los tipos de Texto que introduces en Txt2, puedes poner varias reglas, como por ejemplo >>> en la expesión es >> Izq([Txt2];1) = "S"

o bien >> Medio([Txt2];2;1) = "X" y así algua otra, teniendo en cuenta que las puedes juntar.

Ejemplo>> Izq([Txt2];1) = "S" O Medio([Txt2];2;1) = "X"

Espero te ayude. Mis saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas