¿Cómo fusionar rápidamente filas basadas en el valor de una columna y luego realizar algunos cálculos en Excel?
Por ejemplo, tienes un rango de datos y una columna tiene duplicados. Ahora deseas fusionar las filas basadas en la columna A (que tiene duplicados) y luego realizar algunos cálculos en otra columna basada en las filas fusionadas, como se muestra en la captura de pantalla:
En Excel, no hay un método rápido para fusionar filas basadas en el valor de una columna, pero aquí te presento algunos trucos que pueden ayudarte a fusionar filas duplicadas y luego sumar o realizar otros cálculos en otra columna.
Datos Originales | Fusionar y Sumar |
![]() | ![]() |
Fusionar filas basadas en una columna y luego sumar valores con VBA
Hay un código VBA que puede ayudarte a fusionar las filas duplicadas y luego sumar los valores de otra columna.
1. Presiona las teclas F11 + Alt para habilitar la ventana de Microsoft Visual Basic for Applications, luego haz clic en Insertar > Módulo y copia y pega el siguiente código VBA en la nueva ventana de Módulo.
VBA: Fusionar filas basadas en el valor de una columna
Sub MG30Nov12()
'Updateby20150519
Dim Rng As Range
Dim InputRng As Range
Dim nRng As Range
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set InputRng = InputRng.Parent.Range(InputRng.Columns(1).Address)
With CreateObject("scripting.dictionary")
.CompareMode = vbTextCompare
For Each Rng In InputRng
If Not .Exists(Rng.Value) Then
.Add Rng.Value, Rng.Offset(, 1)
Else
.Item(Rng.Value).Value = .Item(Rng.Value).Value + Rng.Offset(, 1)
If nRng Is Nothing Then
Set nRng = Rng
Else
Set nRng = Union(nRng, Rng)
End If
End If
Next
If Not nRng Is Nothing Then
nRng.EntireRow.Delete
End If
End With
End Sub
2. Presiona F5 o haz clic en el botón Ejecutar para ejecutar el VBA, y aparecerá un cuadro de diálogo para seleccionar un rango de datos con el que trabajar. Ver captura de pantalla:
3. Después de seleccionar un rango de trabajo, haz clic en Aceptar. Ahora los datos se han fusionado por la primera columna y se han sumado los valores en la segunda columna.
Nota: Este código VBA solo funcionará correctamente cuando se fusiona basándose en la primera columna y se suman los valores en la segunda columna.
Fusionar filas basadas en una columna y luego sumar valores con Combinar Filas Avanzado
Si no estás familiarizado con el código VBA, puedes usar la función Combinar Filas Avanzado de la herramienta complementaria de terceros Kutools para Excel para fusionar fácil y rápidamente las filas duplicadas y luego sumar los valores en otra columna.
1. Selecciona los datos que deseas usar y haz clic en Kutools > Combinar y Dividir > Combinar Filas Avanzado. Ver captura de pantalla:
2. Luego, en el cuadro de diálogo emergente, selecciona la columna en la que fusionarás otras columnas y haz clic en Clave Principal, y haz clic en otra columna y haz clic en Calcular y selecciona Suma.
Consejo: Si tu rango seleccionado tiene encabezados, marca Los datos contienen encabezados, y marcar Usar valores formateados mantendrá el formato después de la fusión.
3. Luego haz clic en Aceptar. Ahora los datos se han fusionado basados en la columna principal, y otra está sumada. Ver captura de pantalla:
Fusionar filas basadas en una columna y luego realizar diferentes operaciones en otras columnas con Combinar Filas Avanzado.
Combinar Filas Avanzado es poderoso, porque no solo puede fusionar filas duplicadas en una columna y luego sumar otra columna, sino que también puede fusionar filas duplicadas en una columna y luego realizar diferentes operaciones en otras columnas.
Supongamos que tengo un rango de datos como se muestra en la siguiente captura de pantalla, y quiero combinar tanto los valores en la Columna B como sumar los valores en la Columna C basados en la Columna A.
Kutools para Excel - Cargado con más de 300 herramientas esenciales para Excel. ¡Disfruta de funciones de IA permanentemente gratis! ¡Descarga ahora!
1. Selecciona el rango de datos y haz clic en Kutools > Combinar y Dividir > Combinar Filas Avanzado. Ver captura de pantalla:
2. En el cuadro de diálogo Combinar Filas Basadas en Columna, haz lo siguiente:
(1) Haz clic en la columna en la que deseas combinar basándote, y haz clic en Clave Principal;
(2) Haz clic en la columna en la que deseas combinar datos, y haz clic en Combinar, luego selecciona un delimitador que necesites de la lista;
(3) Haz clic en la columna en la que deseas sumar valores y haz clic en Calcular, y selecciona Suma.
3. Haz clic en Aceptar. Ahora puedes ver el resultado como sigue:
Con la función Combinar Filas Avanzado, también puedes fusionar filas basadas en una columna y luego contar, promediar, mantener el primer o último dato en otras columnas.
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!