Quiero saber cómo dar una fórmula concisa para la siguiente fórmula larga en la hoja de Excel:
= (A1*A6)+(B1*B6)+(C1*C6)...
¿Utilizo una función de suma o hay otra función para esto? Creo que usar el colon con la SUM
función debería ayudar, pero no sé cómo usarlo.
Respuestas:
Está buscando la función SUMPRODUCT .
Esto devolverá la suma de los productos de los artículos correspondientes en dos (o más) rangos.
Como puede ver en la documentación de Microsoft a la que he vinculado, los rangos no necesitan ser filas individuales o columnas individuales (aunque deben tener las mismas dimensiones).
SUMPRODUCT puede multiplicar valores de hasta 255 rangos diferentes. Por ejemplo
=SUMPRODUCT(A1:C1,A6:C6,A11:C11)
es lo mismo que=A1*A6*A11+B1*B6*B11+C1*C6*C11
.fuente
SUM
La función no funcionará ya que solo agrega los elementos. Debe multiplicar los valores antes de pasar a SUM como=SUM(A1*A6, B1*B6, C1*C6, D1*D6, E1*E6)
Por supuesto, también puede usar lo
=A1*A6 + B1*B6 + C1*C6 + D1*D6 + E1*E6
que resulta en casi el mismo esfuerzo de escrituraSUM
Hay muchas mejores soluciones. Una forma es usar la fórmula de matriz . Puedes ver un ejemplo exacto como el tuyo allí:
Para usar la fórmula de matriz en su caso, puede escribir (por supuesto, debe cambiar el último elemento de la matriz en consecuencia)
y luego presione Ctrl+ Shift+Enter
La fórmula de matriz es una herramienta muy poderosa. Sin embargo, úselo con cuidado. Cada vez que necesite editarlo, no debe olvidar presionar Ctrl+ Shift+Enter
También es más rápido ya que el patrón de acceso ya se conoce. Ahora, en lugar de hacer 11 cálculos diferentes por separado, se puede vectorizar y hacer en paralelo, utilizando múltiples núcleos y unidades SIMD en la CPU
fuente
MOD
. Ej. ) HaránSUMPRODUCT
que se rompa, y luego tendrá que reemplazarlo con una fórmula Array. Sin mencionar que todas las versiones de Office lanzadas han agregado fórmulas de matriz más comúnmente utilizadas como funciones oficiales (por ejemplo,MAXIFS
en 365) Si su fórmula de matriz es lenta, torpe y se rompe, probablemente necesite optimizar su código. Y, por supuesto, dado que PowerQuery es una extensión de complemento adicional, muchas empresas (por diversos motivos) no lo incluirán en su paquete de compilación corporativa, lo que lo convierte en una solución inferior para fines comerciales distribuidos.Otro enfoque es poner en A7 la expresión = A1 * A6 y copiar a la derecha todo lo que desee, luego sumar la fila $ 7 $ para obtener la respuesta final. No lo hace en una celda como desea, pero a veces es útil tener los productos intermedios. He usado ambas versiones. Este se siente más Excel-ish para mí, pero su gusto puede ser diferente.
fuente
Si coloca la lista de números en columnas en lugar de filas (digamos dos columnas A y B), puede usar la función = Sumproduct (A: A, B: B) de esa manera. le dará el producto de tantos números como haya en las columnas A y B.
Puede usar tantas columnas en la función Sumproduct como necesite
fuente
Si no hay nada más en las filas 1 y 6 que no sea para lo que desea tener una
SUMPRODUCT()
, puede usar la idea mencionada en este comentario . En su caso, como se describe en su pregunta, usaría=SUMPRODUCT(1:1,6:6)
fuente
SUMPRODUCT(1:1,2:2)
y yo proporcioné una respuesta basada en ese comentario explicando cómo se puede usar en función de la pregunta original y cuál sería la limitación.