Validación de datos de celdas con fórmulas

03/03/2008 - 17:36 por asquipe | Informe spam
Hola a todos, mi problema es el siguiente:

Tengo una celda en la que tiene una fórmula introducida y no se puede
modificar. Pues bien, digamos que la fórmula da el valor 4. Lo que yo quiero
hacer es comparar el 4 con el valor de otra celda, y si es distinto, que me
dé un mensaje de error. He probado con la validación poniéndole un mensaje de
error pero sólo me funciona en celdas en las que meto yo el valor
manualmente, no en celdas como ésta que tiene su fórmula metida y no es
modificable.

Un saludo.

Preguntas similare

Leer las respuestas

#1 Juan M
03/03/2008 - 19:05 | Informe spam
Hola,

Las reglas de validación, como has observado, solo se aplican a los valores
introducidos.
Podrías hacer uso de los formatos condicionales para resolver tu problema y
que si no cumpla la condición cambie de color.
También podrías modificar la fórmula para el caso de que no cumpla la
condición escriba un texto de error en la celda.
=si(valor formula<valor objetivo;"Error";valor formula)

Si no te sirve puedes emplear los eventos de hoja como SelectionChange,
Change o Calculate. limitando el mensaje de error a la modificación de las
celdas que influyan en el cálculo de la fórmual que tienes en la celda. Sino
tienes esto en cuenta saltará simpre que ocurra un cambio o un recalculo,...

Si comentas más datos sobre la fórmula...

Un saludo,
Juan


"asquipe" escribió
Mostrar la cita
#2 asquipe
03/03/2008 - 19:20 | Informe spam
"Juan M" escribió:

Mostrar la cita
Hola, la fórmula es muy simple, es una multiplicación de dos celdas. Lo que
quiero hacer es que si esa celda que tiene la fórmula, si sale por ej. el
valor 4, si en la otra celda el valor es 5, lo que quiero es k me muestre un
error en la celda que tiene la fórmula si el resultado es menor o igual a 5.

Un saludo.
#3 Juan M
03/03/2008 - 19:51 | Informe spam
Hola,

Si quieres un mensaje,...

Supongo
en B2 tienes el valor objetivo (5)
en E1 tienes la fórmula
en B2 un valor parte de la fórmula de E1
en B3 otro valor de la fórmula

Selcciona la pestaña de la hoja con el botón secundario del ratón y elige
ver código:

Copia el siguiente código:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("B1") Or Target = Range("B2") _
Or Target = Range("B3") Or Target = Range("E1") Then
If Range("E1") <= Range("B1") Then
MsgBox "El resultado es menor", vbCritical, "ERROR!!!!"
End If
End If
End Sub

Un saludo,
Juan


"asquipe" escribió

Mostrar la cita
#4 asquipe
03/03/2008 - 20:03 | Informe spam
"Juan M" escribió:

Mostrar la cita
No hay forma de hacerlo sin tener que recurrir a una macro? Es que la
solución debo buscarla sin macros.

Un saludo,
#5 Juan M
03/03/2008 - 21:01 | Informe spam
Hola,

Las otras dos formas, el formato condicional o la función si no valen?
=si(valor formula<=valor objetivo;"Error";valor formula)

Una última opción sería controlar las otras celdas uqe intervienen al final
salta el error aunque puede ser poco o nada práctica
En el supuesto anterior controlar las celda b1, b2, b3.
en personalizada escribe la fórmula á<±
y poniendo el mensaje de error que quieras.

Un saludo,
Juan

"asquipe" escribió
Mostrar la cita
Ads by Google
Search Busqueda sugerida