Problemas con 0 o celda en blanco

04/05/2006 - 17:59 por xeiwik | Informe spam
Buenas tardes a todos.
Desearía que me explicarais que diferencia hay entre una celda con el
valor 0 o en blanco.
Me explico: En las columnas A y B tengo código y descripción de
productos, en la C tengo otro dato, en la D tengo el coste bruto, en la
E tengo el coste neto y en la F tengo la fórmula siguiente:
=SI(Y(MIN($D4;$G4;$J4;$M4;$P4;$S4)Ô;D4<>0)=VERDADERO;"*";"").
Sucesivamente tengo los datos de otros proveedores correspondiendo a G,
J, M, P y S, los costes brutos de otros proveedores. La misma formula
la tengo puesta para cada proveedor en I, L, O, R y U. Me funciona y me
indica con "*" el coste neto menor, siempre y cuando las celdas
vacías(quiero decir sin precio) lo sigan estando. En cuanto alguna
celda vacía la cambio por el valor 0, desaparece la marca indicadora
del coste menor, por lo que en toda la fila no aparece ninguna. Es un
libro de un compañero que me ha pedido ayuda, que al mismo tiempo
compartirá con otros dos compañeros, por lo que no puedo controlar
qué usuario dejará la celda en blanco y cual usará el valor 0.
Además, creo que es más correcto saber cómo hacerlo que andar
tapando agujeros puesto que en un futuro puedo encontrarme en la misma
situación con un trabajo propio. Lo siento, antes de decidirme a
preguntaros, lo he intentado de muchas maneras pero no hay forma...
Gracias de antemano

Preguntas similare

Leer las respuestas

#1 KL
04/05/2006 - 18:48 | Informe spam
Hola xeiwik,

Una celda vacia es una celda vacia (que no contiene nada) que no es un valor numerico y el valor 0 es un valor numerico. Lo que ocurre es que muchas veces el valor NULO puede ser convertido en 0 usando operadores matematicos basicos (p.ej. +, -, /, *, ^, =, >, <, <>, etc.). No asi con las funciones que operan con los numeros que suelen ignorar las celdas vacias por no ser numericas. En tu caso concreto al introducir un 0 en el rango evaluado al mismo tiempo introduces el nuevo valor minimo (el cero) que ya no es igual al valor de la celda [D4], y aunque lo fuera la condicion D4<>0 impedira que se de por valido. Creo que una de las soluciones es impedir la entrada de 0 en las celdas en cuestion mediante el menu Datos>Validacion...

Saludos,
KL


"xeiwik" wrote in message news:
Buenas tardes a todos.
Desearía que me explicarais que diferencia hay entre una celda con el
valor 0 o en blanco.
Me explico: En las columnas A y B tengo código y descripción de
productos, en la C tengo otro dato, en la D tengo el coste bruto, en la
E tengo el coste neto y en la F tengo la fórmula siguiente:
=SI(Y(MIN($D4;$G4;$J4;$M4;$P4;$S4)Ô;D4<>0)=VERDADERO;"*";"").
Sucesivamente tengo los datos de otros proveedores correspondiendo a G,
J, M, P y S, los costes brutos de otros proveedores. La misma formula
la tengo puesta para cada proveedor en I, L, O, R y U. Me funciona y me
indica con "*" el coste neto menor, siempre y cuando las celdas
vacías(quiero decir sin precio) lo sigan estando. En cuanto alguna
celda vacía la cambio por el valor 0, desaparece la marca indicadora
del coste menor, por lo que en toda la fila no aparece ninguna. Es un
libro de un compañero que me ha pedido ayuda, que al mismo tiempo
compartirá con otros dos compañeros, por lo que no puedo controlar
qué usuario dejará la celda en blanco y cual usará el valor 0.
Además, creo que es más correcto saber cómo hacerlo que andar
tapando agujeros puesto que en un futuro puedo encontrarme en la misma
situación con un trabajo propio. Lo siento, antes de decidirme a
preguntaros, lo he intentado de muchas maneras pero no hay forma...
Gracias de antemano
Respuesta Responder a este mensaje
#2 martinez
04/05/2006 - 19:00 | Informe spam
Creo que debieras controlar el valor en la celda que comparas (puedes
hacerlo con validacion) pues no solo pueden dejar la celda en blanco.

"xeiwik" escribió en el mensaje
news:
Buenas tardes a todos.
Desearía que me explicarais que diferencia hay entre una celda con el
valor 0 o en blanco.
Me explico: En las columnas A y B tengo código y descripción de
productos, en la C tengo otro dato, en la D tengo el coste bruto, en la
E tengo el coste neto y en la F tengo la fórmula siguiente:
=SI(Y(MIN($D4;$G4;$J4;$M4;$P4;$S4)Ô;D4<>0)=VERDADERO;"*";"").
Sucesivamente tengo los datos de otros proveedores correspondiendo a G,
J, M, P y S, los costes brutos de otros proveedores. La misma formula
la tengo puesta para cada proveedor en I, L, O, R y U. Me funciona y me
indica con "*" el coste neto menor, siempre y cuando las celdas
vacías(quiero decir sin precio) lo sigan estando. En cuanto alguna
celda vacía la cambio por el valor 0, desaparece la marca indicadora
del coste menor, por lo que en toda la fila no aparece ninguna. Es un
libro de un compañero que me ha pedido ayuda, que al mismo tiempo
compartirá con otros dos compañeros, por lo que no puedo controlar
qué usuario dejará la celda en blanco y cual usará el valor 0.
Además, creo que es más correcto saber cómo hacerlo que andar
tapando agujeros puesto que en un futuro puedo encontrarme en la misma
situación con un trabajo propio. Lo siento, antes de decidirme a
preguntaros, lo he intentado de muchas maneras pero no hay forma...
Gracias de antemano
Respuesta Responder a este mensaje
#3 xeiwik
04/05/2006 - 23:17 | Informe spam
En primer lugar, agradezo vuestras respuestas.
En algun momento he pensado en la validación de datos pero
sinceramente creia que había cometido algun error que escapaba a mis
conocimientitos.
Po otro lado, (no soy consciente de si me ha sucedido alguna vez a mi
tambien), ¿cómo es que si la celda C9 está vacía i en la celda D9
indica É, también esté vacia, y unas filas más abajo, por ejemplo,
C23 también esté vacía y por el contrario, la celda D23 que indica
Â3, ponga 0. Ya he mirado formatos por si acaso, he eliminado,
arrastrado, copiado...
Otra vez, gracias por todo.
Respuesta Responder a este mensaje
#4 KL
05/05/2006 - 00:04 | Informe spam
Hola xeiwik,

¿cómo es que si la celda C9 está vacía i en la celda D9
indica É, también esté vacia, y unas filas más abajo, por ejemplo,
C23 también esté vacía y por el contrario, la celda D23 que indica
Â3, ponga 0.



Es muy probable que en la celda [C9] tengas una formula que devuelve ""
[p.ej.: =SI(A9>6;A9;"")].

Si estoy en lo cierto, entonces habra que aclarar una cosa mas:
La formula que devuelve "" no esta vacia ni tiene el valor NULO sino contiene una cadena de texto de longitud 0.
Por tanto al referirse a la celda [C9] mediante É, la formula devuelve una cadena de texto de longitud 0 que puede confundirse con una celda vacia.

Otra posiblidad es que tengas algun caracter invisible en la celda como p.ej. un espacio.

Saludos,
KL
Respuesta Responder a este mensaje
#5 Héctor Miguel
05/05/2006 - 10:36 | Informe spam
hola, 'anonimo/a' !

si como mencionas: no puedes 'controlar' que usuario dejara una celda vacia y cual le pondra un 0 -cero- ...
hay otras 'consideraciones' que deberas tomar en cuenta [p.e.]
1) la funcion min(...) -> 'omite' celdas vacias, verdadero/falso y textos PERO... -> SI 'toma en cuenta' los valores 0 -cero- :-(
2) para averiguar si una celda esta [realmente] 'vacia'... puedes usar [p.e.] la funcion: -> =esblanco(celda] ;)
3) la 'expresion': -> ¡<>0 -> 'devuelve' FALSO... si la celda esta 'vacia' -???-
esto significa que una celda [realmente] vacia... es considerada como una celda con el 'valor' de 0 -cero-
lo que [en algun momento] pudiera ocasionarte 'errores' de interpretacion en relacion con 'esa' celdas -?-
4) si fuera el caso de que tus 'rangos' en los que se evaluan los minimos fuera celdas 'contiguas'...
podrias utilizar una formula ->matricial<- para 'descartar' los que tuvieran ceros [p.e.]
=min(si(a1:a10<>0,a1:a10)) [o cualquier otra 'variable de comparacion' diferente de <>0] :))
5) al tratarse de rangos NO-contiguos [ya que segun se aprecia estan a cada 3 columnas hasta completar 15]...
[creo que] la siguiente formula [aunque 'kilometrica'] podria ayudarte a comprender el comportamiento 'del caso' :))
-> tomando como punto de partida la columna '$D', a cada 3 columnas, hasta completar las 15 -> columna '$S'

=si(y(d4<>0,d4=min(si(subtotales(5,desref($d4,,{1\2\3\4\5\6}*3-3,1,1))<>0,subtotales(5,desref($d4,,{1\2\3\4\5\6}*3-3,1,1)),falso))),"*","")

NO es 'matricial', y podrias sustituir la constante: -> {1\2\3\4\5\6}*3-3 [p.e.] por: -> {0\3\6\9\12\15}
pero me parecio mas 'facil' de re/acomodar/adaptar/modificar/ampliar/reducir/... y 'entender' la constante utilizada :))

esta formula podras copiarla a cada 3 columnas y tiene la 'ventaja' de omitir celdas vacias, v/f, textos y celdas con 0 -cero- ;)
[en tanto averiguamos la forma de 'adelgazarla', aunque sea un pelin mas] :D

OJO: solo toma en cuenta que mi sistema usa como separador de argumentos a la coma ',' NO al punto y coma ';' :D
y que 'mi' separador de filas en matrices constantes... es la barra inversa ->\<- [tu sistema pudiera necesitar otro caracter} -?-

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

__ consulta original __
... En las columnas A y B tengo codigo y descripcion de productos... C... otro dato... D... el coste bruto
... E... el coste neto y... F... la formula siguiente: =SI(Y(MIN($D4;$G4;$J4;$M4;$P4;$S4)Ô;D4<>0)=VERDADERO;"*";"").
... tengo... datos de otros proveedores correspondiendo a G, J, M, P y S, los costes brutos de otros proveedores.
La misma formula la tengo puesta para cada proveedor en I, L, O, R y U. Me funciona y me indica con "*" el coste neto menor
siempre y cuando las celdas vacias (quiero decir sin precio) lo sigan estando.
En cuanto alguna celda vacía la cambio por el valor 0, desaparece la marca indicadora del coste menor
por lo que en toda la fila no aparece ninguna... no puedo controlar que usuario dejara la celda en blanco y cual usara el valor 0.
... creo que es mas correcto saber como hacerlo que andar tapando agujeros puesto que
en un futuro puedo encontrarme en la misma situacion con un trabajo propio...
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida