Excel: agregar dos conjuntos de columnas en uno

Excel: agregar dos conjuntos de columnas en uno

En una hoja de Excel, tengo dos conjuntos de datos diferentes de tres columnas cada uno, que representan datos muy similares.

Me gustaría combinar esto en un conjunto de tres columnas.

Cada conjunto de datos tiene su columna más a la izquierda como clave por la que me gustaría agrupar.

Una clave aparece una vez o nunca en cada conjunto de datos. Las otras columnas son numéricas y pueden estar vacías (interpretadas como cero). Las dos series pueden tener diferentes longitudes.

Al igual que:

[Name_A],[Score_A],[Value_A],[Name_B],[Score_B],[Value_B]
Adam,14,20,Johnny,8,
Johnny,11,,Bernice,5,5
,,,Adam,2,8

debe agregarse en:

[Name],[Score],[Value]
Adam,16,28
Johnny,19,
Bernice,5,5

El orden de las filas en el resultado final no es importante.

Respuesta1

Analice sus datos usando texto en columnas y usando la coma como delimitador. Luego, compile una lista de nombres distintos (puede hacerlo eliminando duplicados en la pestaña de datos en Excel) y use =sumif(Name_Column,Name1,Value1_Column).

Esto debería resumir todo por nombre y valor.

Ejemplo

Respuesta2

La clave para fusionar sus conjuntos de datos es extraer una lista de nombres únicos. Esto esmuchomás fácil si los nombres están todos en una columna. Si debe tener sus datos organizados como lo ha mostrado, existe una solución VBA, así que comente a continuación si la necesita.

En la primera tabla a continuación, moví los datos "B" debajo de los datos "A" y agregué algunas filas más en cada sección.

ingrese la descripción de la imagen aquí

Esta fórmula, completada desde E2, enumera los nombres y elimina duplicados:

=IFERROR(INDEX((A$2:A$15),MATCH(0,COUNTIF($E$1:E1,A$2:A$15),0)),"")

Es una fórmula matricial, por lo que se debe ingresar con CTRLShiftEnter.

Estas dos fórmulas, completadas desde F2 y G2, suman la puntuación y el valor de cada nombre de la lista:

=IF(LEN(E2)<1,"",SUMIF(A$2:A$15,E2,B$2:B$15))

=IF(LEN(E2)<1,"",SUMIF(A$2:A$15,E2,C$2:C$15)) ______________________________________________________________________

Cómo funciona:El interno COUNTIF()crea una matriz del número de veces que cada uno de los nombres de la columna A aparece en la lista creciente de la columna E. Encuentra MATCH()la posición del primer 0 (correspondiente a un nombre que aún no ha aparecido en la lista) en esa matriz , y que se utiliza como número_fila en un INDEX(), que selecciona el nombre de la columna A. Los nombres que ya se han enumerado no vuelven a aparecer.

¡ IFERROR()Inserta espacios en blanco para las filas que tendrían un #NUM! error cuando la fórmula se queda sin valores únicos.

Las dos SUMIF()fórmulas simplemente suman los números de puntuación y valor de cada nombre. Inserta IF()un espacio en blanco para las filas donde la longitud de la columna E es < 1 (es decir, la celda no tiene nombre y aparece en blanco).

información relacionada