Sumar valores con el mismo nombre


45

Tengo un Google Sheets con una larga lista de nombres y cantidades. Muchos de los nombres son duplicados. Por ejemplo:

John  | 10
Bill  | 2
Susan | 3
Frank | 4
Sally | 10
John  | 2
Susan | 2
John  | 3

¿Hay alguna forma automatizada de combinar todos los valores para obtener una lista sin nombres duplicados y una sola suma de todas las entradas de cada persona?

Por ejemplo:

John  | 15
Bill  | 2
Susan | 5
Sally | 10

Respuestas:


51

Suponiendo que los nombres están en A1: A8, cantidades en B1: B8, primero necesitamos una lista de nombres única en D1:

=UNIQUE(A1:A8)

Luego use la suma condicional en E1:

=SUMIF(A$1:A$8,D1,B$1:B$8)

Tenga en cuenta el $prefijo antes del número de celda. Esto mantendrá los mismos rangos cuando copiemos el contenido de las celdas (seleccione las celdas E1: E8 y presione Ctrl+ D).


2
¡Excelente! Solo desea agregar que en algunas configuraciones regionales debe reemplazar la coma con punto y coma, es decir, = SUMARIO (A $ 1: A $ 8; D1; B $ 1: B $ 8).
JLund

Gracias por la respuesta. Votado. ¿Cómo se ordena en orden descendente por la cantidad? En este ejemplo, John vendría primero, luego Sally, Susan y finalmente Bill.
Vaddadi Kartick

Ejemplo :) = ORDENAR (A2: B92; FALSO)
Zmogas

2
no funciona para mí
Gilbou

23

Si usa la función de consulta, entonces no tiene que preocuparse de que la lista crezca y de que no haya copiado la fórmula de suma lo suficiente.

Si los nombres están en A: A y las cantidades están en B: B, entonces en D1 ingrese:

=QUERY(A:B, "select A, sum(B) group by A")

Hay una respuesta mucho más a fondo aquí , incluso con capturas de pantalla.


1
¿Qué pasa si tuviera una fila de encabezado? ¿Tendría que conocer los índices específicos de la fila inicial y final? Ajá, parece que puedo especificar el número de filas de encabezado ... support.google.com/docs/answer/3093343?hl=es
qix

Este es el método más limpio, creo. Tenga en cuenta que si no desea consultar toda la hoja de cálculo (por ejemplo, si tiene datos no relacionados a continuación), puede especificar un rango como A2: B28) Además, me gusta usar la función CONCATENAR para combinar varias columnas de mi hojas de cálculo en una fila para agrupar, como apellido, nombre.
Evan Donovan

7

También intentaré esto: prefiero usar la función de filtro. El uso de la selección de columnas permite que la tabla crezca automáticamente al agregar datos "nuevos":

FILTER(B:B;A:A=D2)

Si tiene un encabezado, puede cambiarlo en consecuencia:

FILTER($B$2:B;$A$2:A=D2)

Hacer la sumatoria subsecuente es fácil:

SUM(FILTER($B$2:B;$A$2:A=D2))

Ver ejemplo: Archivo que preparé con ejemplo



1

Use la siguiente fórmula!

Encabezamiento: =UNIQUE(A:A)

Valor: =SUMIF(A:A,UNIQUE(A:A),B:B)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.