Consejo: Otros idiomas son traducidos por Google. Puedes visitar el English versión de este enlace.
Iniciar sesión
x
or
x
x
Suscríbete
x

or

¿Cómo concatenar filas en una celda según el grupo en Excel?

Aquí hay un rango de dos columnas, una es la lista de clases, y la otra es la lista de nombres de estudiantes. Como puede ver, algunos estudiantes están en la misma clase, otros no. Ahora quiero concatenar a los estudiantes de la misma clase en una celda, como se muestra a continuación, ¿cómo puedo manejarla rápidamente en Excel?
doc concatenate por grupo 1

Agrupar y concatenar con fórmulas y función de filtro

Agrupe y concatenar con código VBA

Agrupar y concatenar con filas combinadas avanzadasbuena idea3

Combina columnas o filas fácilmente sin perder datos en Excel

Supongamos que está trabajando con una hoja de trabajo que contiene múltiples registros duplicados, y ahora necesita combinar / fusionar las filas en función del mismo valor y hacer algunos cálculos, como suma, promedio, recuento de las filas duplicadas. Con este Filas de combinación avanzadas of Kutools for Excel, puede combinar rápidamente los mismos valores / mismos datos o filas duplicadas en las celdas apropiadas. ¡Haz clic para la versión de prueba gratuita de 60 días!
doc filas combinadas avanzadas
Kutools para Excel: con más de 200 útiles complementos de Excel, de prueba sin límite en días 60.

Agrupar y concatenar con fórmulas y función de filtro

En Excel, puede aplicar fórmulas a filas concatenadas basadas en una columna, luego use la función de Filtro para mostrar solo el resultado.

Nota: Debe ordenar sus datos por clase antes de seguir los pasos.

1. En una celda en blanco al lado del rango de datos, por ejemplo, C13, escriba esta fórmula =IF(A13=A12,C12&", "&B13,B13), prensa Enter clave y llene la fórmula a las celdas con el arrastre del identificador de relleno.
doc concatenate por grupo 2

En la fórmula, A13 es el primer dato en la columna "Clase", B13 es el primer dato en la columna "Nombre", "," es el separador que delimita los contenidos de concatenación.

2. Luego, en la siguiente columna, D13, escribe esta fórmula =IF(A13<>A14,"Last","") y arrastre el controlador de relleno hacia abajo para aplicar la fórmula a las celdas que necesita.
doc concatenate por grupo 3

3. Ahora seleccione todo el rango de datos incluyendo fórmulas y haga clic Información > Filter añadir Filter icons a los datos.
doc concatenate por grupo 4

4. Haga clic en el Filter icon en el encabezado de la última fórmula, verifique Last casilla de verificación solo de la lista desplegable y haga clic en OK.
doc concatenate por grupo 5

Ahora el resultado se muestra a continuación, puede eliminar la última columna auxiliar si no la necesita.
doc concatenate por grupo 6


Agrupe y concatenar con código VBA

Aquí hay un código VBA que también puede manejar este trabajo.

1. Prensa Alt + F11 teclas para habilitar el Microsoft Visual Basic for Applications ventana.

2. Luego, en la ventana, haz clic Tools > References para permitir References diálogo y verificación Microsoft Scripting Runtime. Ver captura de pantalla:
doc concatenate por grupo 7
doc concatenate por grupo 8

3. Hacer clic OKY haga clic en Insert > Module en la ventana de VBA, y copiar y pegar debajo del código de VBA al Module guión. Ver captura de pantalla:

VBA: Concatene filas en una celda según el grupo

  Sub ConcatenateCellsIfSameValues()
'UpdatebyExtendoffice20180201
    Dim I As Long
    Dim J As Long
    Dim xRg As Range
    Dim xRgKey As Range
    Dim xRgVal As Range
    Dim xStr As String
    Dim xDic As New Dictionary
    On Error Resume Next
    Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8)
    If xRgKey Is Nothing Then
        MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel"
    End If
    Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1)
    For I = 1 To xRgKey.Count
        If I > xRgKey.Count Then Exit For
        xStr = ""
        For J = 1 To xRgVal.Columns.Count
            xStr = xStr & " " & xRgVal(I, J)
        Next
        If xDic.Exists(xRgKey(I).Text) Then
            xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr
            xRgKey(I).EntireRow.Delete
            I = I - 1
       Else
            xDic.Add xRgKey(I).Text, xStr
        End If
    Next
    For I = 1 To xRgVal.Count
        xRgVal(I).Value = xDic(xRgKey(I).Text)
    Next
End Sub

doc concatenate por grupo 9

4. Prensa F5 clave, y seleccione el rango de datos que usa en el cuadro de diálogo emergente.
doc concatenate por grupo 10

5. Hacer clic OK para seleccionar la columna de clave sobre la que desea agrupar.
doc concatenate por grupo 11

6. Hacer clic OK, ahora el resultado se muestra a continuación:
doc concatenate por grupo 12


Agrupar y concatenar con filas combinadas avanzadas

Aquí hay una utilidad en Kutools for Excel, Advanced Combine filas, que puede combinar filas o hacer cálculos basados ​​en una columna clave en Excel.

Kutools for Excel, con más de 120 funciones prácticas, hace que sus trabajos sean más fáciles.

Después de instalar Kutools para Excel, haz lo siguiente:(Descarga gratuita Kutools for Excel ahora!)

1. Seleccione el rango de datos que usa y haga clic Kutools > Content > Filas de combinación avanzadas.
doc concatenate por grupo 13

2. En el Advanced Combine Rows ventana, elija la columna en la que desea combinar las filas y haga clic en Primary Key para establecerlo como columna de clave.
doc concatenate por grupo 14

3. Seleccione la columna que necesita combinar, haga clic Combiney elija un delimitador que use para separar los contenidos combinados.

doc concatenate por grupo 15 doc arrow derecha doc concatenate por grupo 16

4. Hacer clic Ok. El resultado se muestra así:
doc concatenate por grupo 17

Nota: Antes de aplicar la utilidad, será mejor que tenga una copia de los datos originales.


  • Super Formula Bar (edite fácilmente varias líneas de texto y fórmula); Diseño de lectura (lee y edita fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas y mantener datos; Contenido de celdas divididas; Combinar filas duplicadas y suma / promedio... Prevenir células duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Celdas múltiples sin cambiar la referencia de fórmula; Crear referencias automáticamente a múltiples hojas; Insertar viñetas, Casillas de verificación y más ...
  • Fórmulas favoritas e insertadas rápidamente, Gamas, cuadros y cuadros; Cifrar celdas con contraseña Crear una lista de correo y enviar correos electrónicos ...
  • Extracto del texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtro a otras hojas); Clasificación avanzada por mes / semana / día, frecuencia y más; Filtro especial por negrita, cursiva ...
  • Combinar libros de trabajo y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes xls, xlsx y PDF...
  • Funciona con Office 2007-2019 y 365, y es compatible con todos los idiomas. Es fácil de implementar en su empresa. Funciones completas de prueba gratuita de 60-day.
pestaña kte 201905
  • Habilitar la edición y lectura con pestañas en Word, Excel, PowerPoint, Editor, Acceso, Visio y Proyecto.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta tu productividad en un 50% y reduce cientos de clics del mouse por ti todos los días!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.