Tutorial de Excel: Combinar columnas, filas y celdas
Combinar columnas, filas o celdas es una tarea habitual en Excel, como por ejemplo unir el nombre y apellido que están en dos columnas en una sola para obtener el nombre completo, combinar filas con el mismo ID y sumar los valores correspondientes, o juntar un rango de celdas en una sola celda, entre otros. Este tutorial recopila todos los escenarios posibles para combinar columnas, filas o celdas en Excel y te ofrece diferentes soluciones para cada caso.
En este tutorial, se crean algunos ejemplos para explicar los métodos. Puedes modificar las referencias según tus necesidades al utilizar el código VBA o las fórmulas a continuación, o puedes descargar las muestras para probar los métodos directamente.
Haz clic para descargar el archivo de muestra
1 Combinar columnas/filas en una sola celda
Combinar columnas o filas en una sola celda y separar el resultado por coma, espacio u otros delimitadores, como se muestra en la siguiente captura, es una de las funciones más utilizadas en Excel.
| Combinar columnas en una sola celda |
![]() |
| Combinar filas en una sola celda |
![]() |
1.11 Usar el símbolo de ampersand (&)
En Excel, el símbolo de ampersand (&) se utiliza habitualmente para unir textos.
Ejemplo: Combinar nombre (columna A) y apellido (columna B) para obtener el nombre completo
Selecciona una celda donde quieras mostrar el resultado combinado y escribe una fórmula como esta:
=A2&" "&B2
En la fórmula, & se utiliza para unir los textos, A2 y B2 son los dos textos que se van a combinar, " " es el delimitador (espacio) que separa ambos textos en la celda de resultado. Si prefieres usar una coma como delimitador, simplemente escribe una coma entre comillas dobles ",".
Pulsa la tecla Enter para obtener el resultado combinado y luego arrastra el controlador de autorrelleno hacia abajo para obtener los resultados combinados.
Ejemplo: Combinar número (fila15) y nombre (fila16) en una sola celda
Si deseas combinar filas en una sola celda, cambia las referencias de celda y el separador en la fórmula según lo necesites, y arrastra el controlador de autorrelleno hacia la derecha para obtener los resultados combinados.
1.12 Usar la función CONCATENATE (Excel2016 o versiones anteriores)
Si utilizas Excel2016 o una versión anterior, la función CONCATENATE puede ayudarte.
| Sintaxis de CONCATENATE |
| CONCATENATE (texto1,[texto2],…) |
Para más información sobre la función CONCATENATE, visita: CONCATENATE.
Ejemplo: Combinar nombres (columna F) y dirección (columna G) en una sola columna
Selecciona una celda donde quieras mostrar el resultado combinado y escribe una fórmula como esta:
=CONCATENATE(F2,",",G2)
En la fórmula, F2 y G2 son los dos textos que se van a combinar, "," es el delimitador (coma) que separa ambos textos en la celda de resultado. Si prefieres usar un espacio como delimitador, simplemente escribe un espacio entre comillas dobles " ".
Pulsa Enter para obtener el resultado combinado, luego arrastra el controlador de autorrelleno hacia abajo para obtener los resultados combinados.
Para combinar filas, solo cambia las referencias de celda y el delimitador según lo necesites, y arrastra el controlador de autorrelleno hacia la derecha.
1.13 Usar la función CONCAT o TEXTJOIN (Excel2019 o Excel365)
Si utilizas Excel2019 o Excel365, las funciones CONCAT y TEXTJOIN pueden ser la mejor opción.
| Sintaxis de CONCAT |
| CONCAT (texto1,[texto2],…) |
Para más información sobre la función CONCAT, visita: CONCAT.
El uso de la función CONCAT es igual que el de CONCATENATE. Para combinar nombre y apellido en dos columnas separadas en una sola columna, la fórmula se utiliza así:
=CONCAT(A21," ",B21)
En la fórmula, A21 y B21 son los dos textos que se van a combinar, " " es el delimitador (espacio) que separa ambos textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el delimitador entre comillas dobles "".
Pulsa la tecla Enter para obtener el resultado combinado y luego arrastra el controlador de autorrelleno hacia abajo para obtener los resultados combinados.
A diferencia de combinar columnas, al combinar filas, después de introducir la primera fórmula, debes arrastrar el controlador de autorrelleno hacia la derecha hasta obtener todos los resultados combinados.
| Sintaxis de TEXTJOINT |
| TEXTJOIN (delimitador, ignorar_vacíos, texto1, [texto2], ...) |
Para más información sobre la función TEXTJOIN, visita: TEXTJOIN.
Para combinar columnas o filas usando TEXTJOIN:
=TEXTJOIN(",",TRUE,E21:G21))
En la fórmula, E21:G21 es un rango continuo que se va a combinar. " " es el delimitador (espacio) que separa los textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el delimitador entre comillas dobles "". El valor lógico “TRUE” indica que se ignorarán las celdas vacías al combinar; si deseas combinar incluyendo los espacios en blanco, reemplaza TRUE por FALSE.
Pulsa la tecla Enter para obtener el resultado combinado y luego arrastra el controlador de autorrelleno hacia abajo para obtener los resultados combinados.
| Omitir espacios en blanco |
![]() |
| Incluir espacios en blanco |
![]() |
1.14 Usar el Bloc de notas (solo para combinar columnas)
1. Usar el Bloc de notas también permite combinar columnas (no funciona para combinar filas).
Selecciona el rango que deseas combinar en una sola columna y pulsa Ctrl + C para copiar el rango.
2. Abre un Bloc de notas, y pulsa Ctrl + V para pegar el rango copiado.
3. Selecciona una tabulación entre dos textos en el Bloc de notas y pulsa Ctrl + H para activar la función Reemplazar , un símbolo de tabulación ya estará colocado en Buscar lo siguiente cuadro de texto.
4. En el Reemplazar con cuadro de texto, escribe el delimitador que deseas usar para separar los textos combinados y luego haz clic en Reemplazar Todo. Luego cierra el Reemplazar diálogo.
5. Ahora selecciona los textos en el Bloc de notas y pulsa Ctrl + C para copiarlos, ve a Excel, selecciona una celda y pulsa Ctrl + V para pegar los resultados combinados.

Extensión: Combinar columnas/filas en una sola celda con salto de línea como delimitador
Si deseas combinar columnas o filas en una sola celda usando un salto de línea como delimitador, como se muestra en la siguiente captura:
Primero, debes saber que en Excel, la función CHAR() puede usarse para especificar caracteres que son difíciles de introducir en una fórmula, como CHAR(10) que devuelve un salto de línea.
Luego, utiliza CHAR(10) en las fórmulas mencionadas anteriormente para combinar columnas o filas con salto de línea como delimitador:
Símbolo de ampersand:
=A49&CHAR(10)&B49
Función CONCATENATE:
=CONCATENATE(A49,CHAR(10),B49)
Función CONCAT
=CONCAT(A49,CHAR(10),B49)
Función TEXTJOIN
=TEXTJOIN(CHAR(10),TRUE,A49:B49)
Después de introducir una de las fórmulas anteriores, selecciona los resultados y haz clic en Inicio > Ajustar texto.
Ahora, las columnas se han combinado en una sola y separadas por un salto de línea.
Si solo deseas combinar filas de una columna en una sola celda, la función Justificar de Excel puede ayudarte. Selecciona la columna con varias filas y haz clic en Inicio > Rellenar > Justificar; las filas se combinarán en la celda superior del rango, separadas por un espacio.
![]() |
![]() |
En esta parte, el tutorial presenta los métodos para combinar columnas o filas en una sola celda omitiendo las celdas vacías, como se muestra en la siguiente captura:
1.21 Usar la función TEXTJOIN (Excel2019 o Excel365)
Si utilizas Excel2019 o Excel365, afortunadamente, la nueva función TEXTJOIN puede resolver esta tarea fácilmente.
| Sintaxis de CONCATENATE |
| TEXTJOIN (delimitador, ignorar_vacíos, texto1, [texto2], ...) |
Para más información sobre la función TEXTJOIN, visita: TEXTJOIN.
Ejemplo: Combinar nombre (columna A), número (columna B) y dominio (columna C) en una sola celda para generar una dirección de correo electrónico, algunos números pueden estar en blanco.
Selecciona una celda donde colocar el resultado combinado y escribe la fórmula así:
=TEXTJOIN("",TRUE,A2:C2)
En la fórmula, A2:C2 es el rango que contiene los textos a combinar, "" es el delimitador (ninguno) que separa los textos en la celda de resultado. Si deseas usar un delimitador, simplemente escríbelo entre comillas dobles, por ejemplo, ",". El valor lógico “TRUE” indica que se omitirán las celdas vacías al combinar; si deseas combinar incluyendo los espacios en blanco, reemplaza TRUE por FALSE.
Pulsa Enter para obtener el primer resultado y arrastra el controlador de autorrelleno hacia abajo o hacia la derecha según lo necesites para generar todos los resultados.
1.22 Usar el símbolo de ampersand (&)
Si utilizas Excel2016 o versiones anteriores, usa el símbolo de ampersand (&) para unir los textos uno a uno y omite manualmente los espacios en blanco.
Selecciona una celda donde quieras mostrar el resultado combinado y escribe una fórmula como esta:
=A10&C10
En la fórmula, & se utiliza para unir los textos, A10 y C10 son los dos textos que se van a combinar. Si prefieres usar una coma como delimitador, simplemente escribe una coma entre comillas dobles como "," y usa & para unir los textos.
Pulsa Enter para obtener el resultado combinado. Luego cambia las referencias de la fórmula para obtener el siguiente resultado combinado.
Para usuarios de Excel2016 y versiones anteriores, si hay varias columnas o filas que necesitas combinar omitiendo los espacios en blanco, puedes usar un VBA para crear una función definida y resolver rápidamente esta tarea.
1. Pulsa las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo para insertar un nuevo módulo.
3. Copia y pega el siguiente código en el nuevo módulo y guárdalo.
VBA: Combinar celdas omitiendo celdas vacías
Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice
For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & "_"): Next
Concatenatecells = Left(nn, Len(nn) - 1)
End Function

4. Vuelve a la hoja de cálculo, selecciona una celda donde colocar el resultado combinado y escribe la fórmula
=Concatenatecells(A15:C15)
En la fórmula, A15:C15 es el rango que contiene los textos a combinar. En el código VBA, "_" indica el delimitador que se usará para separar los textos en el resultado combinado; puedes cambiar el delimitador según lo necesites.
Si tienes instalado Kutools para Excel, la función Combinar filas/columnas/celdas y mantener valores es de gran ayuda para todo tipo de tareas de combinación.
1. Selecciona las celdas que deseas combinar y las celdas donde quieres colocar los resultados combinados.
2. Haz clic en Kutools > Combinar y dividir > Combinar filas/columnas/celdas y mantener valores.
3. En el cuadro de diálogo emergente, especifica las opciones de la siguiente manera:
1) Especifica si deseas combinar columnas, filas o todas las celdas en una sola.
| Combinar columnas Ej. | Combinar filas Ej. | Combinar en una sola celda Ej. |
![]() |
![]() |
![]() |
2) Especifica el separador para los textos en el resultado combinado.
3) Especifica la ubicación del resultado combinado (deshabilitado al elegir la opción Combinar en una sola celda)
Al elegir la opción Combinar columnas, puedes especificar si el resultado se coloca en la celda izquierda del rango seleccionado o en la celda derecha.
| Celda izquierda Ej. | Celda derecha Ej. |
![]() |
![]() |
Al elegir la opción Combinar filas, puedes especificar si el resultado se coloca en la celda superior del rango seleccionado o en la celda inferior.
| Celda superior Ej. | Celda inferior Ej. |
![]() |
![]() |
4) Especifica la operación sobre los resultados combinados.
4. Haz clic en Ok o Aplicar para finalizar la combinación.
| Mantener el contenido de estas celdas |
![]() |
| Eliminar el contenido de estas celdas |
![]() |
| Fusionar estas celdas |
![]() |
Para más información sobre esta función, visita Combinar columnas, filas, celdas y mantener valores.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
A veces, puedes querer combinar dos columnas si una de ellas contiene celdas en blanco. Supón que tienes dos columnas: la columna A contiene nombres de usuario y algunas celdas vacías, y la columna B contiene nombres. Ahora solo debes rellenar las celdas vacías de la columna A con el contenido correspondiente de la columna B al combinar ambas columnas, como se muestra en la siguiente captura:
La función IF se utiliza para comprobar una condición específica. Aquí puedes usar IF para comprobar si la celda está vacía y, en ese caso, rellenar el espacio en blanco con el contenido de otra columna.
| Sintaxis de la función IF |
| IF (prueba_lógica, [valor_si_verdadero], [valor_si_falso]) |
Para más información sobre la función IF, visita: IF
Selecciona la celda superior de la columna donde quieres colocar los resultados combinados y copia o introduce la siguiente fórmula:
=IF(A2="",B2,A2)
Luego pulsa Enter para obtener el primer resultado y arrastra el controlador de autorrelleno hacia abajo para obtener todos los resultados.
Ahora solo las celdas en blanco de la columna A se han rellenado con el contenido de la columna B.
Aquí tienes un código VBA que también puede realizar esta tarea.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones, luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. Copia y pega el siguiente código en el nuevo módulo.
VBA: Fusionar dos columnas si hay celdas en blanco
Sub MergebyBlank()
'UpdatebyExtendoffice20220506
Dim xRg1, xRg2, xRgUser As Range
Dim xRg As Range
Dim xWsh As Worksheet
Dim xCount, xFNum As Integer
Set xRg1 = Range("A:A")
Set xRg2 = Range("B:B")
Set xWsh = xRg1.Worksheet
Set xRgUser = xWsh.UsedRange
Set xRg1 = Intersect(xRgUser, xRg1)
Set xWsh = xRg2.Worksheet
Set xRgUser = xWsh.UsedRange
Set xRg2 = Intersect(xRgUser, xRg2)
xCount = xRg1.Count
If (xCount > xRg2.Count) Then
xCount = xRg2.Count
End If
For xFNum = 1 To xCount
If (xRg1.Item(xFNum).Value = "") Then
If (xRg2.Item(xFNum).Value <> "") Then
xRg1.Item(xFNum).Value = xRg2.Item(xFNum).Value
End If
ElseIf (xRg2.Item(xFNum).Value = "") Then
If (xRg1.Item(xFNum).Value <> "") Then
xRg2.Item(xFNum).Value = xRg1.Item(xFNum).Value
End If
End If
Next
End Sub

En el código, A:A y B:B son las dos columnas que se van a fusionar; simplemente cámbialas según lo necesites.
3. Luego pulsa F5 o haz clic en Ejecutar
botón, entonces la columna A se rellenará con el valor de la columna B si la celda correspondiente en la columna A está vacía.
2 Combinar filas con el mismo ID
Supón que tienes una tabla con varias columnas, una de ellas contiene valores de ID que pueden estar duplicados. Ahora el tutorial te muestra métodos para combinar las filas de la tabla según el mismo ID y realizar algunos cálculos.
En esta parte se presentan los métodos para combinar filas con el mismo ID y separarlas por comas, como se muestra en la siguiente captura:
Aquí tienes un código VBA que puede realizar esta tarea
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones, luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. Copia y pega el siguiente código en el nuevo módulo.
VBA: Combinar filas con el mismo ID
Sub Combine_Rows()
'UpdatebyExtendoffice20220506
Dim xRg As Range
Dim xRows As Long
Dim I As Long, J As Long, K As Long
On Error Resume Next
Set xRg = Application.InputBox("Select Range:", "Kutools For Excel", Selection.Address, , , , , 8)
Set xRg = Range(Intersect(xRg, ActiveSheet.UsedRange).Address)
If xRg Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
For I = xRows To 2 Step -1
For J = 1 To I - 1
If xRg(I, 1).Value = xRg(J, 1).Value And J <> I Then
For K = 2 To xRg.Columns.Count
If xRg(J, K).Value <> "" Then
If xRg(I, K).Value = "" Then
xRg(I, K) = xRg(J, K).Text
Else
xRg(I, K) = xRg(I, K).Text & "," & xRg(J, K).Text 'here uses comma as separator, you can change it to others as you need
End If
End If
Next
xRg(J, 1).EntireRow.Delete
I = I - 1
J = J - 1
End If
Next
Next
ActiveSheet.UsedRange.Columns.AutoFit
End Sub

3. Luego pulsa F5 o haz clic en Ejecutar
botón, entonces aparecerá un cuadro de diálogo de Kutools para Excel para que selecciones la tabla cuyas filas deseas combinar por el mismo ID.
4. Haz clic en OK. Ahora la tabla seleccionada ha combinado las filas según el mismo ID.
2.12 Usar la función IF para agregar columnas auxiliares
Si solo tienes dos columnas y deseas combinar las filas con el mismo ID, y los valores de la otra columna separados por coma, como se muestra en la siguiente captura, la función IF puede ayudarte.
1. Ordena el ID de la A a la Z. Selecciona la columna de ID y haz clic en Datos > Ordenar de A a Z.
2. Luego, en el Aviso de ordenación diálogo, marca Expandir la opción de selección y haz clic en Ordenar.
Ahora los mismos ID han sido ordenados juntos.
3. En la columna adyacente, usa la función IF así:
=IF(A17=A18,C17&", "&B18,B18)
En la fórmula, A17 y A18 son las dos celdas adyacentes en la columna de ID (A17 es el encabezado de la columna de ID), B18 es la celda correspondiente a A18. ", " indica que los valores se separarán por coma. Puedes cambiar las referencias y el separador según lo necesites.
4. Pulsa Enter para obtener el primer resultado y luego arrastra el controlador de autorrelleno hacia abajo para obtener todos los resultados.
5. Ve a la columna adyacente y escribe la siguiente fórmula:
=IF(A18<>A19,"Combinado","")
En la fórmula, A18 y A19 son las dos celdas adyacentes en la columna de ID. Si las celdas adyacentes no son iguales, devolverá "Combinado"; de lo contrario, devolverá vacío.
6. Pulsa Enter para obtener el primer resultado y luego arrastra el controlador de autorrelleno hacia abajo para obtener todos los resultados.
7. Selecciona la última columna de fórmulas, incluido el encabezado, y haz clic en Datos > Filtro.
8. Haz clic en el Filtro botón y marca Combinado casilla en el menú desplegable y haz clic en OK.
Ahora solo se han filtrado las filas combinadas. Copia los datos filtrados y pégalos en otro lugar.
Para más detalles sobre la función IF, visita: IF.
Si tienes instalado Kutools para Excel, la función Combinar filas avanzado puede realizar esta tarea fácilmente.
1. Selecciona la tabla y haz clic en Kutools > Combinar y dividir > Combinar filas avanzado.
2. En el cuadro de diálogo de Combinar filas avanzado, realiza lo siguiente:
1) Elige la columna de ID y establécela como Clave principal;
2) Elige la columna cuyos valores deseas combinar con un separador, haz clic en Combinar y selecciona un separador.
3)haz clic en Ok.
Ahora las filas se han combinado por el mismo ID.
La función Combinar filas avanzado modificará los datos originales, por lo que se recomienda guardar una copia antes de usarla.
Para más información sobre esta función, visita Combinar filas avanzado.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
Si deseas combinar filas con el mismo ID y luego sumar los valores u otros cálculos, como se muestra en la siguiente captura, los siguientes métodos pueden ayudarte.
2.21 Usar la función Consolidar
Si solo tienes dos columnas, una contiene textos (ID) y la otra valores que necesitas calcular, como la suma, la función incorporada Consolidar de Excel puede ayudarte.
1. Selecciona una celda donde quieras colocar el resultado combinado y haz clic en Datos > Consolidar.
2. En el cuadro de diálogo Consolidar, realiza lo siguiente:
1) Elige las funciones que necesites;
2) Haz clic en la flecha para seleccionar la tabla;
3) Haz clic en Agregar para añadir el rango seleccionado a la lista de Todas las referencias;
4) Marca las casillas de Fila superior y Columna izquierda;
5) Haz clic en OK.
Ahora la tabla se ha sumado según el mismo ID.
Aquí tienes un VBA que también puede combinar filas con el mismo ID y luego sumar los valores.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones y luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. En el nuevo módulo, copia y pega el siguiente código VBA.
VBA: Combinar filas duplicadas y sumar
Sub CombineRows()
'Updateby Extendoffice
Dim WorkRng As Range
Dim Dic As Variant
Dim arr As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set Dic = CreateObject("Scripting.Dictionary")
arr = WorkRng.Value
For i = 1 To UBound(arr, 1)
Dic(arr(i, 1)) = Dic(arr(i, 1)) + arr(i, 2)
Next
Application.ScreenUpdating = False
WorkRng.ClearContents
WorkRng.Range("A1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.keys)
WorkRng.Range("B1").Resize(Dic.Count, 1) = Application.WorksheetFunction.Transpose(Dic.items)
Application.ScreenUpdating = True
End Sub
3. Luego pulsa F5 o haz clic en Ejecutar
botón, aparecerá un cuadro de diálogo para seleccionar la tabla que vas a usar y luego haz clic en OK.
Ahora el rango seleccionado se ha combinado con los mismos valores y sumado.
El VBA modificará los datos originales, por lo que se recomienda guardar una copia antes de usarlo.
2.23 Usar una herramienta práctica – Combinar filas avanzado
Si la tabla que deseas combinar y calcular tiene más de dos columnas, por ejemplo, tres columnas: la primera contiene nombres de productos duplicados que deben combinarse, la segunda contiene nombres de tiendas que deben combinarse y separarse por coma, y la última contiene números que deben sumarse según las filas duplicadas de la primera columna, como se muestra en la siguiente captura, la función Combinar filas avanzado de Kutools para Excel puede ayudarte.
1. Selecciona la tabla y haz clic en Kutools > Combinar y dividir > Combinar filas avanzado.
2. En el cuadro de diálogo de Combinar filas avanzado, realiza lo siguiente:
1) Elige la columna de ID y establécela como Clave principal;
2) Elige la columna cuyos valores deseas combinar con un separador, haz clic en Combinar y selecciona un separador.
3) Elige la columna sobre la que deseas realizar el cálculo, haz clic en Calcular y selecciona un cálculo.
4)haz clic en Ok.
Ahora las filas se han combinado y calculado según las filas iguales.
La función Combinar filas avanzado modificará los datos originales, por lo que se recomienda guardar una copia antes de usarla.
Para más información sobre esta función, visita Combinar filas avanzado.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
Si tienes una tabla con varias columnas y una de ellas contiene valores duplicados, el objetivo es combinar las filas adyacentes de esa columna con los mismos valores, como se muestra en la siguiente captura. ¿Cómo puedes hacerlo?
En Excel no existe una función incorporada que resuelva directamente esta tarea, pero aquí tienes un VBA que puede hacerlo.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones, luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. En el nuevo módulo, copia y pega el siguiente código VBA.
VBA: Combinar filas adyacentes con el mismo valor
Sub MergeSameCell()
'Updateby Extendoffice
Dim Rng As Range, xCell As Range
Dim xRows As Integer
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
xRows = WorkRng.Rows.Count
For Each Rng In WorkRng.Columns
For i = 1 To xRows - 1
For j = i + 1 To xRows
If Rng.Cells(i, 1).Value <> Rng.Cells(j, 1).Value Then
Exit For
End If
Next
WorkRng.Parent.Range(Rng.Cells(i, 1), Rng.Cells(j - 1, 1)).Merge
i = j - 1
Next
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

3. Luego pulsa F5 o haz clic en Ejecutar
botón para activar este VBA, aparecerá un cuadro de diálogo para seleccionar la tabla que vas a usar y luego haz clic en OK.
Ahora las filas adyacentes con los mismos valores en la primera columna se han combinado en el rango seleccionado.
El VBA modificará los datos originales, por lo que se recomienda guardar una copia antes de usarlo. Además, este VBA fusionará los valores iguales en la primera columna de la tabla seleccionada.
2.32 Usar una herramienta práctica – Fusionar celdas iguales
Si tienes Kutools para Excel instalado, la función Fusionar celdas iguales de Kutools para Excel puede resolver esta tarea en un solo paso.
Selecciona la columna cuyos valores iguales deseas combinar y haz clic en Kutools > Combinar y dividir > Fusionar celdas iguales.
Ahora las celdas adyacentes con los mismos valores se han fusionado.
Si deseas deshacer la fusión de las celdas y rellenar los valores de nuevo, puedes aplicar la función Deshacer fusión y rellenar valores función.

Para más información sobre esta función, visita Fusionar celdas iguales.
Para más información sobre esta función, visita Deshacer fusión de celdas.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
3 Combinar celdas
Para combinar un rango con varias filas y columnas en una sola celda, aquí tienes cuatro métodos.
Ejemplo: Combinar el rango A1:C3 
3.11 Usar el símbolo de ampersand (&)
En Excel, el símbolo de ampersand (&) se utiliza habitualmente para unir textos.
Selecciona una celda donde quieras mostrar el resultado combinado y escribe una fórmula como esta:
=A1&", "&B1&", "&C1&", "&A2&", " &B2&", "&C2&", "&A3&", "&B3&", "&C3
En la fórmula, & se utiliza para unir los textos, ", " es el delimitador (coma + espacio) que separa los textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el separador entre comillas dobles.
Pulsa la tecla Enter para obtener el resultado combinado.
3.12 Usar la función CONCATENATE (Excel2016 o versiones anteriores)
Si utilizas Excel2016 o una versión anterior, la función CONCATENATE puede ayudarte.
| Sintaxis de CONCATENATE |
| CONCATENATE (texto1,[texto2],…) |
Para más información sobre la función CONCATENATE, visita: CONCATENATE
Selecciona una celda donde quieras mostrar el resultado combinado y escribe una fórmula como esta:
=CONCATENATE(A1,", ",B1,", ",C1,", ",A2,", ",B2,", ",C2,", ",A3,", ",B3,", ",C3)
En la fórmula, A1, B1…,C3 son los textos que deseas combinar. ", " es el delimitador (coma + espacio) que separa los textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el separador entre comillas dobles.
Luego pulsa la tecla Enter para obtener el resultado combinado.
3.13 Usar la función CONCAT o TEXTJOIN (Excel2019 o Excel365)
Si utilizas Excel2019 o Excel365, las funciones CONCAT y TEXTJOIN pueden ser la mejor opción.
| Sintaxis de CONCAT |
| CONCAT (texto1,[texto2],…) |
Para más información sobre la función CONCAT, visita: CONCAT.
El uso de la función CONCAT es igual que el de CONCATENATE. Para combinar nombre y apellido en dos columnas separadas en una sola columna, la fórmula se utiliza así:
=CONCAT(A1,", ",B1,", ",C1,", ",A2,", ",B2,", ",C2,", ",A3,", ",B3,", ",C3)
En la fórmula, A1, B1…,C3 son los textos que deseas combinar. ", " es el delimitador (coma + espacio) que separa los textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el separador entre comillas dobles.
Luego pulsa la tecla Enter para obtener el resultado combinado.
| Sintaxis de TEXTJOIN |
| TEXTJOIN (delimitador, ignorar_vacíos, texto1, [texto2], ...) |
Para más información sobre la función TEXTJOIN, visita: TEXTJOIN.
Para combinar columnas o filas usando TEXTJOIN:
=TEXTJOIN(", ",TRUE,A1:C3)
En la fórmula, A1:C3 es un rango continuo que se va a combinar. ", " es el delimitador (coma + espacio) que separa los textos en la celda de resultado. Si prefieres usar otros delimitadores, simplemente escribe el delimitador entre comillas dobles "". El valor lógico “TRUE” indica que se omitirán las celdas vacías al combinar; si deseas combinar incluyendo los espacios en blanco, reemplaza TRUE por FALSE.
Luego pulsa la tecla Enter para obtener el resultado combinado.
Si deseas usar un salto de línea como delimitador, utiliza CHAR(10) en la fórmula, por ejemplo: =TEXTJOIN(CHAR(10),TRUE,A1:C3), y luego formatea la celda de resultado como Ajustar texto.
3.14 Usar Combinar filas/columnas/celdas y mantener valores
Si tienes Kutools para Excel instalado, la función Combinar filas/columnas/celdas y mantener valores puede realizar esta tarea rápidamente.
1. Selecciona el rango de celdas que deseas combinar en una sola celda y haz clic en Kutools > Combinar y dividir > Combinar filas/columnas/celdas y mantener valores.
2. En el cuadro de diálogo emergente, marca Combinar en una sola celda y especifica un separador según lo necesites, luego haz clic en Ok.
Ahora las celdas se han fusionado en una sola celda con el delimitador especificado. Si el contenido de la celda es demasiado extenso para mostrarse, puedes hacer clic en Ajustar texto en la pestaña Inicio para mostrarlo.
Para más información sobre esta función, visita Combinar columnas, filas, celdas y mantener valores.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
| Transponer celdas en una sola columna |
![]() |
| Transponer celdas en una sola fila |
![]() |
3.21 Nombrar el rango y usar la función INDEX (solo para una sola columna)
Si deseas transponer el rango de celdas en una sola columna, puedes nombrar el rango y luego usar la función INDEX.
1. Selecciona el rango de celdas, haz clic derecho para abrir el menú contextual y haz clic en Definir nombre.
2. En el cuadro de diálogo emergente Nuevo nombre escribe un nombre en el Nombre cuadro de texto y haz clic en OK.
3. Después de nombrar el rango, selecciona una celda donde colocar los datos transpuestos y usa la función INDEX así:
=INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1)
Para más información sobre la función INDEX, visita aquí.
4. Pulsa Enter y luego arrastra el controlador de autorrelleno hacia abajo para rellenar esta fórmula hasta que aparezca el error #REF!.
5. Elimina el valor de error y el rango de celdas se habrá combinado en una sola columna.
3.22 VBA (solo para una sola columna)
Para combinar celdas en una sola columna, aquí tienes un VBA que también puede hacerlo.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones, luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. Copia y pega el siguiente código VBA en el módulo en blanco.
VBA: Convertir rango en columna
Sub ConvertRangeToColumn()
'UpdatebyExtendoffice
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
Rng.Copy
Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

3. Luego pulsa F5 o haz clic en Ejecutar
botón, aparecerá un cuadro de diálogo para seleccionar un rango de celdas, haz clic en OK.
4. Aparecerá otro cuadro de diálogo para seleccionar una celda donde colocar el resultado, haz clic en OK.
3.23 Usar una herramienta práctica – Transformar rango
Si deseas combinar celdas en una sola fila, Excel no tiene una función incorporada para ello. Sin embargo, si tienes Kutools para Excel instalado, su función Transformar rango permite convertir un rango en una sola columna o fila, y también convertir una fila o columna en un rango.
1. Selecciona el rango de celdas y haz clic en Kutools > Rango > Transformar rango.
2. En el Transformar rango cuadro de diálogo, marca Rango a columna única o Rango a fila única según lo necesites. Haz clic en OK.
3. Aparecerá un cuadro de diálogo para seleccionar una celda donde colocar el resultado, haz clic en OK.
Ahora el rango de celdas se ha convertido en una fila o columna.
Para más información sobre esta función, visita Transformar rango.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
Si tienes duplicados en una tabla con varias columnas, ¿cómo puedes apilar las columnas en una sola columna sin duplicados, como se muestra en la siguiente captura?
En esta parte se presentan tres métodos diferentes para realizar esta tarea.
3.31 Copiar y pegar y eliminar duplicados
En Excel, el método general para resolver esta tarea es copiar y pegar las columnas una a una y luego eliminar los valores duplicados.
1. Selecciona la primera columna y pulsa Ctrl + C para copiarla, luego selecciona una celda de destino y pulsa Ctrl + V para pegar.
2. Repite el paso1 para copiar las demás columnas y pégalas debajo de la primera columna.
3. Selecciona la columna apilada y haz clic en Datos > Eliminar duplicados, luego en el Eliminar duplicado cuadro de diálogo, marca el nombre de la columna y haz clic en OK.

4. Ahora aparecerá un cuadro de diálogo para avisarte de que se han eliminado los valores duplicados. Haz clic en OK para cerrarlo y la columna apilada solo conservará los valores únicos.
Si tienes cientos de columnas, copiar y pegar una a una es muy laborioso. Sin embargo, si tienes Kutools para Excel instalado, la función Transformar rango puede convertir rápidamente el rango en una columna y luego aplicar la función Eliminar duplicados de Excel.
Selecciona el rango de columnas y haz clic en Kutools > Rango > Transformar rango.
Luego marca la opción Rango a columna única y haz clic en OK para seleccionar una celda donde colocar la columna apilada.
Y luego aplica Eliminar duplicados para eliminar los valores duplicados.
Para más información sobre esta función, visita Transformar rango.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de 30 días de Kutools para Excel, descárgalo ahora.
Además, aquí tienes un código VBA que puede resolver esta tarea.
1. Pulsa Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones, luego haz clic en Insertar > Módulo para crear un módulo en blanco.
2. Copia y pega el siguiente código en el nuevo módulo.
VBA: Apilar columnas en una sola sin duplicados
Sub FindUniques()
'UpdatebyExtendoffice
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set dic = CreateObject("Scripting.Dictionary")
For j = 1 To InputRng.Columns.Count
For i = 1 To InputRng.Rows.Count
xValue = InputRng.Cells(i, j).Value
If xValue <> "" And Not dic.Exists(xValue) Then
OutRng.Value = xValue
dic(xValue) = ""
Set OutRng = OutRng.Offset(1, 0)
End If
Next
Next
End Sub

3. Luego pulsa F5 o haz clic en Ejecutar
botón, aparecerá un cuadro de diálogo para seleccionar las columnas que deseas apilar, haz clic en OK.
4. En el segundo cuadro de diálogo emergente, selecciona una celda de destino para colocar la columna apilada y haz clic en OK.
Ahora las columnas se han apilado en una sola columna con solo valores únicos.
Si tienes dos columnas y una de ellas tiene un formato especial, como una fecha personalizada mm/dd/yyyy, al combinar ambas columnas con los métodos normales, el formato personalizado se perderá, como se muestra en la siguiente captura: 
Ahora en esta parte se ofrecen algunas formas de combinar celdas y mantener el formato.
3.41 Incrustar la función TEXT en la fórmula
La función TEXT se utiliza para convertir un número en texto con un formato específico. Aquí podemos usarla para convertir la celda (que contiene un número) a un formato primero y luego combinarla con otras celdas usando “&”, la función CONCATENATE, CONCAT o TEXTJOIN.
Para detalles sobre cómo combinar celdas en una sola, vuelve a1.1.
| Sintaxis de la función TEXT |
| TEXT (valor, formato_texto) |
Para más información sobre la función TEXT, visita función TEXT.
Aquí se muestra cómo incrustar la función TEXT en la función CONCAT como ejemplo.
Copia y pega la siguiente fórmula en una celda donde quieras colocar el resultado combinado:
=CONCAT(TEXT(A2,"mm/dd/yyyy hh:mm")," ",B2)
En la fórmula, A2 es la celda cuyo formato deseas mantener, “mm/dd/yyyy hh:mm” es el formato que usas, B2 es la otra celda que se va a combinar. " " indica que los valores se separarán por espacio. Puedes cambiar las referencias, el formato y el separador según lo necesites.
Pulsa la tecla Enter y arrastra el controlador de autorrelleno hacia abajo para rellenar las celdas con esta fórmula.
1. Selecciona la tabla cuyas celdas deseas combinar en una sola y pulsa Ctrl + C para copiarlas.
2. Abre un documento en blanco de Word , pulsa Ctrl + V para pegarlas, luego haz clic en la tabla del documento; ahora aparecerá un icono de cruz en la parte superior derecha de la tabla.
3. Haz clic en la pestaña Diseño y luego haz clic en Convertir en texto en el grupo Datos , en el cuadro de diálogo emergente Convertir tabla en texto especifica el separador para las columnas. Haz clic en OK.

Ahora el contenido de la tabla en Word se ha convertido en texto.
4. Selecciona los textos convertidos y pulsa Ctrl + C para copiarlos, vuelve a Excel y selecciona una celda en blanco, pulsa Ctrl + V para pegar el resultado combinado.
3.43 Usar una herramienta práctica – Combinar y mantener valores
La forma más eficiente es usar la función Combinar filas/columnas/celdas y mantener valores de Kutools para Excel, que solo requiere marcar la casilla Usar valores formateados al aplicar la función, y el resultado combinado mantendrá el formato de los datos.
1. Selecciona la tabla incluyendo las celdas donde colocar el resultado y haz clic en Kutools > Combinar y dividir > Combinar filas/columnas/celdas y mantener valores.
2. En el cuadro de diálogo emergente, especifica la operación de combinación según lo necesites y desmarca la opción Usar valores formateados (por defecto, esta opción está marcada). Haz clic en Ok.
Ahora los datos se han combinado y mantienen el formato.
Para más información sobre esta función, visita Combinar columnas, filas, celdas y mantener valores.
Para más información sobre Kutools para Excel, visita Kutools para Excel.
Para una prueba gratuita de {module745} días de Kutools para Excel, descárgalo ahora.
Supón que tienes una tabla que contiene años, meses y días en columnas separadas. El objetivo es combinar las columnas para generar una fecha, como se muestra en la siguiente captura:
La función DATE se utiliza para crear una fecha con año, mes y día.
| Sintaxis de la función DATE |
| DATE(año, mes, día) |
Para más información sobre la función DATE, visita función DATE.
Copia y pega la siguiente fórmula en una celda donde colocar la fecha:
=DATE(A2,B2,C2)
En la fórmula, A2, B2 y C2 son las celdas que contienen los valores de año, mes y día.
Pulsa Enter para obtener la primera fecha y luego arrastra el controlador de autorrelleno hacia abajo para obtener todas las fechas.
Más tutoriales de Excel:
Combinar varios libros/hojas en uno solo
Este tutorial recopila casi todos los escenarios de combinación que puedes encontrar y te ofrece soluciones profesionales para cada caso.
Dividir celdas de texto, número y fecha (separar en varias columnas)
Este tutorial se divide en tres partes: dividir celdas de texto, dividir celdas numéricas y dividir celdas de fecha. Cada parte ofrece diferentes ejemplos para ayudarte a manejar la tarea de dividir cuando te encuentres con el mismo problema.
Combinar el contenido de varias celdas sin perder datos en Excel
Este tutorial se centra en la extracción de una posición específica dentro de una celda y recopila diferentes métodos para ayudarte a extraer texto o números de una celda por posición específica en Excel.
Comparar dos columnas para encontrar coincidencias y diferencias en Excel
Este artículo cubre la mayoría de los escenarios posibles al comparar dos columnas y espera poder ayudarte.
Las Mejores Herramientas de Productividad para Office
Kutools para Excel resuelve la mayoría de tus problemas y aumenta tu productividad en un 80%
- Barra de Fórmulas Super (editar fácilmente múltiples líneas de texto y fórmulas); Diseño de Lectura (leer y editar fácilmente grandes cantidades de celdas); Pegar en Rango Filtrado...
- Combinar Celdas/Filas/Columnas manteniendo los datos; Dividir contenido de celdas; Combinar filas duplicadas y Sumar/Promediar... Prevenir celdas duplicadas; Comparar rangos...
- Seleccionar filas duplicadas o únicas; Seleccionar filas en blanco (todas las celdas están vacías); Búsqueda Avanzada y Búsqueda Difusa en muchos libros de trabajo; Selección Aleatoria...
- Copia Exacta de múltiples celdas sin cambiar la referencia de la fórmula; Crear automáticamente referencias a múltiples hojas; Insertar viñetas, casillas de verificación y más...
- Favoritos e inserción rápida de fórmulas, rangos, gráficos e imágenes; Encriptar celdas con contraseña; Crear lista de correo y enviar correos electrónicos...
- Extraer texto, Agregar texto, Eliminar por posición, Eliminar espacio; Crear e imprimir estadísticas de página; Convertir entre el contenido de las celdas y los comentarios...
- Super 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 y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión masiva de xls, xlsx y PDF...
- Agrupación de Tabla Dinámica por número de semana, día de la semana y más... Mostrar celdas desbloqueadas, bloqueadas por diferentes colores; Resaltar celdas que tienen fórmula/nombre...
- Habilitar edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abrir y crear varios documentos en nuevas pestañas de la misma ventana, en lugar de en ventanas nuevas.
- ¡Aumenta tu productividad en un 50%, y reduce cientos de clics del ratón cada día!

















