Tratando de descifrar algunas fórmulas de Excel y veo algunas cosas como SUMPRODUCT (- Left (...) ...)
¿Cuál es la que hace? Naturalmente, me parece decreciente, pero no pude encontrar ninguna documentación sobre él.
Gracias.
El tablero doble se conoce como operador unario doble.
Try this link: Why use -- in SUMPRODUCT formulae
Específicamente:
SUMPRODUCT () ignora las entradas no numéricas. Una comparación devuelve un valor booleano (VERDADERO/FALSO), que no es numérico. XL coacciona automáticamente valores booleanos a valores numéricos (1/0, respectivamente) en operaciones aritméticas (por ejemplo, TRUE + 0 = 1).
La forma más eficaz de forzar el valor es aplicar primero el operador unario negativo, forzar TRUE/FALSE a -1/0, y luego aplicarlo de nuevo para anular el valor, por ejemplo, +1/0.
Un único operador unario (-) fuerza valores verdadero/falso en -1/0 . Al usar el operador unario doble, forzamos los valores nuevamente a 1/0 .
El operador unario (-) es un método abreviado para convertir un enunciado verdadero/falso en -1/0.
Un único operador convertirá - (verdadero) en -1, por lo que se utiliza un operador unario doble para convertirlo de nuevo en 1:
-(-(true)) = -(-(1)) = 1
-(-(false)) = -(-(0)) = 0
He estado usando SUMPRODUCT por un tiempo y siempre he usado el símbolo *
en lugar del -
. Estoy seguro de que hice la misma pregunta que me hiciste, pero no recuerdo la razón por la que me dieron, pero me dijeron que no había realmente necesidad de -
como subroducto se manejó bastante bien sin él.
De todos modos, = sumproduct (() * () * () * ())
siempre me ha funcionado, y es menos confuso.
Los valores booleanos TRUE y FALSE en excel se tratan como 1 y 0, pero necesitamos convertirlos. Para convertirlos en números 1 o 0, realice alguna operación matemática. El operador Unario niega el booleano (operación matemática), por lo tanto, convierte el valor booleano en número. Lo mismo funciona en TRUE * FALSE = 0