Sunteți pe pagina 1din 4

Macros que te servirn para dar formato

a textos y a celdas en Excel.


Dar formato a textos o a celdas por medio de Macros es algo indispensable para cualquiera que se quiere iniciar en
este maravilloso mundo de Macros en Excel. Los siguientes cdigos te ayudarn a crear procedimientos para dar
formato a tus textos.
Estos cdigos trabajan con la celda activa.
ActiveCell.Font.Bold = True ...' Convierte en Negritas la fuente (texto) de la
celda activa.
ActiveCell.Fonto.Bold = False ...' Desactiva las Negritas de la celda activa.
Si quieres especificar la celda que tiene que cambiar a Negritas entonces debes poner Range, Ejemplo:
Range("A1").Font.Bold = True ...'Convierte en negritas la fuente de la celda
A1.
Para convertir a negritas un rango de celdas escribimos:
Range("A1:A10").Font.Bold = True ...'Convierte en negritas la fuente del rango
de celdas A1:A10.
Tambin puedes seleccionar la celda A1 y despus cambiar el formato a Cursiva de la celda seleccionada:
Range("A1").Select ...'Selecciona la celda A1
Selection.Font.Italic = True ...'Convierte a Cursiva la celda seleccionada
Para subrayar el texto de la celda A1 utilizamos:
Range("A1").Font.Underline = xlUnderlineStyleSingle
Si queremos doble subrayado:
Range("A1").Font.Underline = xlUnderlineStyleDouble
Podemos tambin cambiar el nombre y tamao de la fuente de la celda A1:
Range("A1").Font.Size = 16
Range("A1").Font.Name = "Arial"
O el color de la fuente de A1:
Range("A1").Font.ColorIndex = 5 ...'Convierte a color azul la fuente de la
celda A1.
Range("A1").Font.Color = RGB( 255, 0 , 0 ) ...'Convierte a color rojo la
fuente de la celda A1.
Si quieres conocer los nmeros de color que aplican a ColorIndex sigue este link Macro obtener los 56 colores de

ColorIndex Excel VBA.


Se utiliza Interior para cambiar el color de una celda en lugar de Font:
Range("A1").Interior.ColorIndex = 5 ...'Convierte a color azul la celda A1.
Range("A1").Interior.Color = RGB( 255, 0 , 0 ) ...'Convierte a color rojo la
celda A1.
Para combinar celdas utilizamos MergeCells:
Range("A1:B1").MergeCells = True ...'Combina las celdas A1:B1.
Para descombinarlas utilizamos:
Range("A1:B1").MergeCells = False
Si deseamos ajustar el texto ponemos WrapText:
Range("A1:B1").WrapText = True ...'False si queremos deshabilitar el ajuste
de texto.
Con estos sencillos cdigos ya podemos crear una macro que cambie los formatos de las diferentes celdas o rangos
a nuestro gusto y de manera automtica.
En nuestro Curso de Macros podrs aprender a crear potentes aplicaciones que te ayudarn a ahorrar gran
cantidad
de
tiempo
al
crear
reportes,
informes,
consolidar
datos,
etc.
Para obtener los 56 colores de la paleta de colores, es necesario utilizar el Bucle For...Next.
A partir de la celda A1 debemos colorear la celda con el ndice de color 1 y as
sucesivamente hasta llegar al 56.
For i = 1 To 56 'Utilizamos el bucle for para ejecutar la accin 56 veces
'El color de la celda y la fuente es igual al ndice del color
Cells(i, 2).Font.ColorIndex = i
Cells(i, 1).Interior.ColorIndex = i
'Colocamos en la columna B el nmero del ndice
Cells(i, 2) = i
Next

Private Sub Command1_Click()


Dim appExcel As Object
Const
Const
Const
Const
Const
Const

xlEdgeLeft = 7
xlEdgeRight = 10
xlEdgeTop = 8
xlEdgeBottom = 9
xlInsideHorizontal = 12
xlInsideVertical = 11

Const xlContinuous = 1
Const xlThin = 2
Const xlAutomatic = -4105
Set appExcel = CreateObject("Excel.Application")
With appExcel
.Visible = True
.Workbooks.Add
'Seleccionamos elrangoal cual le vamos a poner bordes
.Range("B9:E20").Select
'Aqui mostramos los bordes Izquierdos
With .Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
'Aqui mostramos los bordes de Arriba
With .Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin

.ColorIndex = xlAutomatic
End With
'Aqui mostramos los bordes de abajo
With .Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
'Aqui mostramos los bordes derechos
With .Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
'Aqui mostramos los bordes interiores verticales
With .Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
'Aqui mostramos los bordes interiores horizontales
With .Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End With
End Sub

S-ar putea să vă placă și