¿Cómo mantengo un subtotal/suma en ejecución en Excel?

¿Cómo mantengo un subtotal/suma en ejecución en Excel?

Sé que probablemente sea una pregunta súper simple, pero no tengo ni idea de cómo redactarla en Google, así que podría averiguarlo por mi cuenta. Tengo una hoja de cálculo en Excel que es básicamente una lista de compras:

Apples--------$1.00             

Bananas-----$2.25

Carrots-------$1.75...

Lo que necesito saber es cómo crear un subtotal acumulado en la siguiente columna que me diga cuál es el total después de agregar cada elemento. Lo que haría que la hoja de cálculo ahora se viera así:

Apples--------$1.00--------$1.00      

Bananas-----$2.25--------$3.25     

Carrots-------$1.75--------$5.00...   

Al final del día, yocomopara poder simplemente agregar un nuevo artículo y precio y hacer que calcule el subtotal actual por sí solo, pero me conformaría con poder manejar la lista existente como lo he mostrado. ¿Alguna idea de cómo puedo hacer esto?

Respuesta1

Una forma sencilla de hacerlo es utilizar una SUMfórmula con una dirección inicial absoluta pero una dirección final que cambia a medida que la fórmula se copia con la expansión de la serie.

Suponiendo que los precios están en la columna By que comienzan en B1, colóquelos =SUM($B$1:B1)en la primera celda de la columna del total acumulado. Luego seleccione la celda para que vea la pinza en la parte inferior derecha. Tómelo y arrástrelo hacia abajo hasta que haya tantas entradas en la columna del total acumulado como en la columna del precio del artículo.

Excel ajustará automáticamente la fórmula para que sume desde la parte superior de la columna del precio del artículo hasta el mismo nivel que la celda actual en la columna del total acumulado. Los signos de dólar en la fórmula impiden que la celda inicial se ajuste cuando extiende la serie arrastrando, pero la celda final se ajusta automáticamente porque no tiene signos de dólar en su dirección (es una dirección relativa).

Respuesta2

La excelente respuesta de BenN es probablemente cómo manejaría esto, pero aquí hay otra idea solo para brindarle una estructura que puede funcionar en alguna otra situación específica:

Suponiendo que los precios están en la columna B y el total acumulado está en la columna C: colóquelo =B1en la primera celda de la columna del total acumulado,C1. Luego colocar =C1+B2en la celdaC2. Esto agrega el nuevo valor al total acumulado anterior. Seleccionar celdaC2para que veas la pequeña pinza cuadrada negra en la parte inferior derecha. Tome ese cuadrado y arrástrelo hacia abajo hasta que haya tantas entradas en la columna del total acumulado como en la columna del precio del artículo. (Al hacer doble clic en ese pequeño cuadrado también se debería completar automáticamente).

Respuesta3

Una forma más compleja, pero alternativa, de hacerlo, con un ligero giro:

A B C D E
Artículo Precio Monto $2.50 Suma
Manzanas $1.00 2.5     
Plátanos $2.25           
Zanahorias $1.75           

La fórmula en D1 es=SUMPRODUCT(B2:B4;C2:C4)


También puede agregar =COUNTIF(A:A;"<>")-1D2, escribir # of items listedE2 (a la derecha de D2) y luego cambiar D1 a:

=SUMPRODUCTO(INDIRECT("B2:"&CELL("dirección";OFFSET(B2;D2-1;0)));INDIRECT("C2:"&CELL("dirección";OFFSET(C2;D2-1;0) )))

... y la actualización de la lista acabará siendo tan sencilla como escribir el artículo, el precio y cualquier importe.
A medida que se actualiza "# de artículos...", el precio y el monto en las columnas al lado del nuevo artículo se incluirán en la suma en D1.

Cómo funciona:
COUNTIF()en D2 dirá cuántas filas hay con filas completadas; es decir: incluye la fila del título, que se "elimina" de la suma al -1final.
El uso de OFFSET()producirá una "referencia" a las filas de la celda D2 desde B2 (y C2), ajustada por "-1" para no incluir la celda debajo del último elemento.
La referencia luego se convertirá en texto CELL()para que sea posible agregarla "B2:"con &...
Con la cadena de texto producida, INDIRECT()creará lo que SUMPRODUCT()necesita para cumplir su tarea.
Es pan comido, ¿no? ;-)

información relacionada