¿Cómo fusionar filas rápidamente en función del valor de una columna y luego hacer algunos cálculos en Excel?
Por ejemplo, tiene un rango de datos y una columna tiene duplicados, ahora desea fusionar las filas de la columna A (tiene duplicados) y luego hacer algunos cálculos en otra columna según las filas fusionadas como se muestra en la captura de pantalla:
En Excel, no existe un método rápido para fusionar filas según el valor de una columna, pero aquí presento el
trucos que pueden ayudarlo a fusionar filas duplicadas y luego sumar o hacer otros cálculos en otra columna.
Fusionar filas basadas en una columna y luego sumar valores con VBA
Hay un código VBA que puede ayudarlo a fusionar las filas duplicadas y luego sumar los valores de otra columna.
Navegación con pestañas y edición de varios libros de trabajo de Excel / documentos de Word como Firefox, Chrome, Internet Explore 10. |
Es posible que esté familiarizado con ver varias páginas web en Firefox / Chrome / IE, y cambiar entre ellas haciendo clic fácilmente en las pestañas correspondientes. Aquí, Office Tab admite un procesamiento similar, que le permite examinar varios libros de Excel o documentos de Word en una ventana de Excel o de Word, y cambiar fácilmente entre ellos haciendo clic en sus pestañas. Haz clic gratis 30-día de prueba de Office Tab! |
1. Prensa F11 + Alt claves para habilitar Microsoft Visual Basic para aplicaciones ventana, luego haga clic en recuadro > Módulo y copie y pegue el código VBA a continuación en el nuevo Módulo ventana.
VBA: fusionar filas según 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. Prensa F5 o haz clic aquí Ejecutar para ejecutar el VBA, y aparece un cuadro de diálogo para seleccionar un rango de datos para trabajar. ver captura de pantalla:
3. Después de seleccionar un rango de trabajo, haga clic en OK. Ahora los datos se han fusionado por la primera columna y suman los valores en la segunda columna.
Note: Este código VBA simplemente puede funcionar correctamente cuando se fusiona en función de la primera columna y suma los valores en la segunda columna.
Fusionar filas basadas en una columna y luego sumar valores con filas de combinación avanzada
Si no está familiarizado con el código VBA, puede usar el Filas combinadas avanzadas característica de la herramienta complementaria de la tercera parte - Kutools for Excel para fusionar fácil y rápidamente las filas duplicadas y luego sumar los valores en otra columna.
Después instalación gratuita Kutools para Excel, haga lo siguiente:
1. Seleccione los datos que desea utilizar y haga clic en Kutools > Fusionar y dividir > Filas combinadas avanzadas. Ver captura de pantalla:
2. Luego, en el cuadro de diálogo emergente, seleccione la columna en la que fusionará otras columnas y haga clic en Primaria Key, haga clic en otra columna y haga clic en Calcular Luego seleccione Suma.
Consejo: Si su rango seleccionado tiene encabezados, marque Mis datos tienen encabezadosy verificar Usar valores formateados mantendrá el formato después de la fusión.
3. Luego haga clic Ok. Ahora los datos se han fusionado en función de la columna principal y se suma otra. Ver captura de pantalla:
Combine filas basadas en una columna y luego realice diferentes operaciones en otras columnas con las filas combinadas avanzadas.
Filas combinadas avanzadas 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 a continuación en la captura de pantalla, y quiero combinar valores en la Columna B y sumar valores en la Columna C según la Columna A.
Después instalación gratuita Kutools para Excel, haga lo siguiente:
1. Seleccione el rango de datos y haga clic en Kutools > Fusionar y dividir > Filas combinadas avanzadas. Ver captura de pantalla:
2. En el Combinar filas según la columna diálogo, haz como estos:
(1) Haga clic en la columna en la que desea combinar en función y haga clic en Clave primaria;
(2) Haga clic en la columna en la que desea combinar los datos y haga clic en Combinar, luego seleccione un separador que necesite de la lista;
(3) Haga clic en la columna que desea sumar valores y haga clic en Calculary seleccione Suma.
3. Hacer clic en Ok. Ahora puede ver el resultado de la siguiente manera:
Con Filas combinadas avanzadas función, también puede fusionar filas basadas en una columna y luego contar, promediar, mantener el primer o último dato en otras columnas.
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
- ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!