Sintaxis de fórmula matricial

Sintaxis de fórmula matricial

Quiero saber cómo dar una fórmula concisa para la siguiente fórmula larga en una 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 los dos puntos con SUMla función debería ayudar, pero no sé cómo usarlos.

Respuesta1

estas buscando elSUMAPRODUCTOfunción.

=SUMPRODUCT(A1:C1,A6:C6)

Esto devolverá la suma de los productos de los artículos correspondientes en dos (o más) rangos.

ingrese la descripción de la imagen aquí

Como puede ver en la documentación de Microsoft a la que me vinculé, no es necesario que los rangos sean filas o columnas únicas (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.

Respuesta2

SUMLa función no funcionará ya que solo agrega los elementos. Necesitas multiplicar los valores.antespasando a SUMA como=SUM(A1*A6, B1*B6, C1*C6, D1*D6, E1*E6)

Por supuesto, también puedes usar =A1*A6 + B1*B6 + C1*C6 + D1*D6 + E1*E6lo que resulta en prácticamente el mismo esfuerzo de escritura queSUM

Hay muchas mejores soluciones. Blackwood ya ha sugerido uno de ellos. Otra forma alternativa es utilizarfórmula matricial. Puedes ver un ejemplo exactamente igual al tuyo de Microsoft:

Sintaxis de fórmula matricial

En general, las fórmulas matriciales utilizan la sintaxis de fórmula estándar. Todos comienzan con un signo igual (=) y puede utilizar la mayoría de las funciones integradas de Excel en sus fórmulas matriciales. La diferencia clave es que cuando usas una fórmula matricial, presionas Ctrl+ Shift+ Enterpara ingresar tu fórmula. Cuando haces esto, Excel rodea tu fórmula matricial con llaves; si escribes las llaves manualmente, tu fórmula se convertirá en una cadena de texto y no funcionará.

Las funciones de matriz son una forma realmente eficiente de crear una fórmula compleja. La fórmula matricial =SUM(C2:C11*D2:D11)es la misma que esta:

=SUM(C2*D2,C3*D3,C4*D4,C5*D5,C6*D6,C7*D7,C8*D8,C9*D9,C10*D10,C11*D11).

Para usar la fórmula matricial en su caso, puede escribir (por supuesto, debe cambiar el último elemento de la matriz en consecuencia)

=SUM(A1:E1*A6:E6)

y luego presione Ctrl+ Shift+Enter

Una vez que comprendas la idea de fórmula matricial, puedes aplicarla a la mayoría de las otras fórmulas e incluso puedes olvidar la existencia deSUMPRODUCT

Actualizar:

Las versiones más nuevas de Excel incluso utilizarán automáticamente fórmulas de matriz en muchos casos

A partir de la actualización de septiembre de 2018 para Office 365, cualquier fórmula que pueda devolver múltiples resultados los distribuirá automáticamente hacia abajo o hacia las celdas vecinas. Este cambio de comportamiento también va acompañado de varias funciones nuevas de matriz dinámica. Las fórmulas de matriz dinámica, ya sea que utilicen funciones existentes o funciones de matriz dinámica, solo deben ingresarse en una sola celda y luego confirmarse presionando Enter. Anteriormente, las fórmulas de matriz heredadas requerían seleccionar primero todo el rango de salida y luego confirmar la fórmula con Ctrl+ Shift+ Enter. Se las conoce comúnmente como fórmulas CSE.

Directrices y ejemplos de fórmulas matriciales


La fórmula matricial es una herramienta muy poderosa. Sin embargo, utilícelo con cuidado. Cada vez que necesites editarlo no debes olvidar presionar Ctrl+ Shift+Enter

¿Por qué utilizar fórmulas matriciales?

Si tienes experiencia usando fórmulas en Excel, sabrás que puedes realizar algunas operaciones bastante sofisticadas. Por ejemplo, puede calcular el costo total de un préstamo durante un número determinado de años. Puede utilizar fórmulas matriciales para realizar tareas complejas, como:

  • Cuente la cantidad de caracteres contenidos en un rango de celdas.

  • Sume solo números que cumplan ciertas condiciones, como los valores más bajos de un rango o números que se encuentran entre un límite superior e inferior.

  • Sume cada enésimo valor en un rango de valores.

Las fórmulas matrices también ofrecen estas ventajas:

  • Consistencia:Si hace clic en cualquiera de las celdas desde E2 hacia abajo, verá la misma fórmula. Esa coherencia puede ayudar a garantizar una mayor precisión.

  • Seguridad:No puede sobrescribir un componente de una fórmula matricial de varias celdas. Por ejemplo, haga clic en la celda E3 y presione Eliminar. Debe seleccionar todo el rango de celdas (E2 a E11) y cambiar la fórmula para toda la matriz, o dejar la matriz como está. Como medida de seguridad adicional, hay que pulsar Ctrl+ Shift+ Enterpara confirmar el cambio de fórmula.

  • Tamaños de archivos más pequeños:A menudo puedes utilizar una única fórmula matricial en lugar de varias fórmulas intermedias. Por ejemplo, el libro usa una fórmula matricial para calcular los resultados en la columna E. Si hubiera usado fórmulas estándar (como =C2*D2, C3*D3, C4*D4…), habría usado 11 fórmulas diferentes para calcular los mismos resultados.

También es más rápido porque ya se conoce el patrón de acceso. Ahora, en lugar de realizar 11 cálculos diferentes por separado, se puede vectorizar y realizar en paralelo, utilizando múltiples núcleos y una unidad SIMD en la CPU.

Respuesta3

Otro enfoque es poner en A7 la expresión =A1*A6 y copiarla a la derecha tanto como 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 me parece más parecido a Excel, pero su gusto puede diferir.

Respuesta4

Si no hay nada más en las filas 1 y 6 aparte de lo que quieres tener SUMPRODUCT(), puedes usar la ideamencionado en este comentario. En su caso, como se describe en su pregunta, usaría=SUMPRODUCT(1:1,6:6)

información relacionada