Como combinar y descombinar celda con macro





Combinar celdas con macro es lo que se explicará en el presente post, si bien cuando se trabaja con macro yo no aconsejo combinar celdas por lo complicado que es buscar datos o determinar la última celdas con datos cuando hay celdas combinadas entre medio de la base de datos, aveces es necesario cuando se realiza una plantilla para ingreso de datos u otro formato que necesita combinar celdas.

A través del siguiente código se puede combinar celdas, en el caso que se presenta se combina el rango A1:G1; debiendo tener presente que los datos que existan en ese rango se borrarán y solo se conservará el dato del extremo superior izquierdo; de igual forma para hacer referencia a la celda combinada se debe referenciar por la celda del extremo superior izquierdo, en este caso es A1.

Range("A1:G1").Merge

Para descombinar las celdas se debe usar:

Range("A1:G1").Unmerge

Como consejo cuando se trabaje con celdas combinadas en medio de una base de datos sugiero descombinar las celdas para poder trabajar mejor los datos y luego volver a combinar para dejar el libro con el formato original.



Antes de continuar, recomiendo que leas un excelente libro sobre Excel el que te ayudará operar las planillas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.

Recuerda que como siempre desde el link del final accederás a descargar en forma GRATUITA cientos de ejemplos de macros y tutoriales que te permitirán automatizar tus hojas de cálculo, en caso de ser útil considera la posibilidad de aportar y con ello ayudarás a seguir manteniendo el sitio.

Suscribe al blog para recibir en tu correo todas las actualizaciones, dispones también de un canal de You Tube donde encontrarás explicaciones de macros con mayor detalle.

Código que se inserta en un módulo



Sub RedondearDown()
Application.ScreenUpdating = False
On Error Resume Next
DisplayAlerts = False
Dim uf As String
Dim fila As Integer
fila = 2
uf = Sheets("Hoja1").Range("A" & Rows.Count).End(xlUp).Row
Range("D2:D" & uf).Clear
While Cells(fila, "A") <> Empty
Cells(fila, "D") = Application.WorksheetFunction.RoundDown(Cells(fila, "C"), Range("G1"))
fila = fila + 1
Wend
Range("C:C").NumberFormat = "#,##0.00000"
Range("D:D").NumberFormat = "#,##0.00000"
MsgBox ("Se redondeo hacia abajo con " & Range("G1") & " decimales con éxito"), vbInformation, "AVISO"
DisplayAlerts = True
Application.ScreenUpdating = True
End Sub



Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.


If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.


Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends