¿Cómo concatenar valores de celdas hasta encontrar una celda en blanco en una columna en Excel?

Por ejemplo, tengo una lista de valores que incluye algunas celdas en blanco, y quiero concatenar cada conjunto de datos entre los espacios en blanco en una celda y enumerar los valores combinados en otra columna, como se muestra en la siguiente captura de pantalla. ¿Cómo podría concatenar celdas hasta encontrar una celda en blanco en una columna?
Concatenar valores de celdas hasta encontrar una celda en blanco en una columna con código VBA
Concatenar valores de celdas hasta encontrar una celda en blanco en una columna con código VBA
No hay una manera directa de concatenar un conjunto de celdas entre espacios en blanco, pero puedes aplicar el siguiente código VBA para manejarlo. Por favor, sigue estos pasos:
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana de Módulo.
Código VBA: concatenar valores de celdas hasta encontrar una celda en blanco
Sub Concatenatecells()
'updateby Extendoffice
Dim xRg As Range
Dim xSaveToRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xTStr As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Columns.Count > 1 Then
MsgBox "the selected range is more than one column", vbInformation, "Kutools for Excel"
Exit Sub
End If
Set xSaveToRg = Application.InputBox("Please select output cell:", "Kutools for Excel", , , , , , 8)
If xSaveToRg Is Nothing Then Exit Sub
Set xSaveToRg = xSaveToRg.Cells(1)
Application.ScreenUpdating = False
For Each xCell In xRg
If xCell <> "" Then
xTStr = xTStr & xCell & " "
Else
xSaveToRg.Value = xTStr
Set xSaveToRg = xSaveToRg.Offset(1)
xTStr = ""
End If
Next
If xTStr <> "" Then xSaveToRg.Value = Left(xTStr, Len(xTStr) - 1)
Application.ScreenUpdating = True
End Sub
3. Luego presiona la tecla F5 para ejecutar este código, y aparecerá un cuadro de diálogo para recordarte que selecciones el rango de datos que deseas concatenar, ver captura de pantalla:
4. Luego haz clic en Aceptar, y aparecerá otro cuadro de diálogo; selecciona una celda para mostrar el resultado concatenado, ver captura de pantalla:
5. Y luego haz clic en el botón Aceptar, y los datos de la lista de columnas se concatenan entre los espacios en blanco, ver captura de pantalla:
Concatenar valores de celdas hasta encontrar una celda en blanco en una columna con Kutools para Excel
Si tienes Kutools para Excel, combinando sus funciones Transformar Rango y Combinar, también puedes completar esta tarea lo más rápido posible. La utilidad Transformar Rango puede ayudarte a convertir una sola columna en un rango, y la función Combinar puede ayudarte a concatenar el rango transformado en una columna.
Después de instalar Kutools para Excel, por favor, sigue estos pasos:
1. Selecciona las celdas que deseas concatenar, y haz clic en Kutools > Rango > Transformar Rango, ver captura de pantalla:
2. En el cuadro de diálogo Transformar Rango, marca la opción Columna única a rango bajo el Tipo de transformación, y luego selecciona Separado por espacios bajo Filas por registro, ver captura de pantalla:
3. Luego haz clic en Aceptar, y aparecerá un cuadro de diálogo para recordarte que selecciones una celda donde se mostrará el resultado, ver captura de pantalla:
4. Haz clic en Aceptar, y los datos de la columna única se han convertido en múltiples filas y columnas separadas por la celda en blanco, ver captura de pantalla:
5. Los datos convertidos están en múltiples columnas, por lo que necesitas combinarlos en una columna. Selecciona el rango de datos y haz clic en Kutools > Combinar y Dividir > Combinar Filas, Columnas o Celdas sin Perder Datos, ver captura de pantalla:
6. En el cuadro de diálogo Combinar Columnas o Filas, realiza las siguientes opciones:
(1.) Selecciona la opción Combinar columnas desde Fusionar el rango seleccionado de la siguiente manera;
(2.) Luego especifica un separador que desees usar para separar los valores concatenados;
(3.) Selecciona cómo deseas manejar las celdas combinadas. Puedes mantener o eliminar los datos originales, y también puedes fusionar las celdas combinadas. Ver captura de pantalla:
7. Después de finalizar la configuración, haz clic en el botón Aceptar o Aplicar, las celdas se han concatenado en una columna con un separador específico, ver captura de pantalla:
Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora
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!