VBA Combinar y Descomponer Celdas
In this Article
En este tutorial, vamos a ver las diferentes formas en las que se pueden combinar celdas utilizando VBA.
Combinar celdas usando VBA
Puede combinar celdas en VBA utilizando el método Range.Merge. El siguiente código combinará las celdas A1:C1:
Sub MergingCells()
Range("A1:C1").Merge
End Sub
El resultado es:
Desunir Celdas Usando VBA
Puedes deshacer la fusión de un rango de celdas utilizando el método Range.UnMerge. Digamos que ha combinado el rango de celdas A1:D1. Puedes utilizar una de las referencias de celdas del rango para deshacer la fusión de las celdas. El siguiente código muestra cómo desunir las celdas A1:D1, en este caso estamos usando la celda B1:
Sub UnmergeCells()
Range("B1").UnMerge
End Sub
Más Ejemplos de Fusión
Combinar Filas Usando VBA
Puedes combinar filas usando VBA especificando los números de fila que quieres combinar. Tenemos el texto en la celda A1 que se muestra a continuación:
El siguiente código combinará las filas 1-4:
Sub CombinarFilas()
Range("1:4").Merge
End Sub
El resultado es:
Combinar columnas usando VBA
Puede combinar columnas utilizando VBA y las letras de las columnas. El siguiente código combinará las columnas A:C.
Sub CombinarColumnas()
Range("A:C").Merge
End Sub
El resultado es:
Combinar y centrar horizontalmente el contenido de las celdas
Puede combinar y centrar el contenido de las celdas horizontalmente en un rango de celdas. Tiene que fusionar las celdas de interés y también establecer la propiedad de alineación horizontal del objeto de rango al centro. Tenemos el texto en la celda A1 como se muestra a continuación:
El siguiente código fusionará el rango de celdas A1:D1 y centrará el contenido de la celda A1 horizontalmente en este rango de celdas:
Sub CombinarYCentrarContenidoHorizontalmente()
Range("A1:D1").Merge
Range("A1:D1").HorizontalAlignment = xlCenter
End Sub
El resultado es:
Combinar y centrar el contenido de las celdas verticalmente
Puede combinar y centrar el contenido de las celdas verticalmente en un rango de celdas. Tienes que fusionar las celdas de interés y también establecer la propiedad de alineación vertical del objeto de rango en el centro. Tenemos el texto en la celda A1 como se muestra a continuación:
El siguiente código fusionará el rango de celdas A1:A4 y centrará el contenido de la celda A1 verticalmente en este rango de celdas:
Sub CombinarYCentrarContenidoVerticalmente()
Range("A1:A4").Merge
Range("A1:D1").VerticalAlignment = xlCenter
End Sub
El resultado es:
Combinar celdas a través de un rango de celdas
Puede combinar celdas a través de un rango de celdas. Tiene que establecer el parámetro opcional Across del método Merge a True. Tenemos el texto en la celda A1 como se muestra a continuación:
El siguiente código combinará el rango de celdas A1:D1:
Sub CombinarCeldasCruzadas()
Range("A1:D1").Merge Across:=True
End Sub
El resultado es: