Macro en Excel para restablecer formato de celdas, usando formulario con opciones combinables

En ocasiones me he topado con archivos de Excel en los que requiero eliminar algún formato, es decir, dejar el formato por default de celdas. Hacer esta tarea en Excel es relativamente sencilla, como lo veremos a continuación.

Restablecer formatos de celdas con las opciones de Excel

La primera opción que podemos usar para restablecer formatos de celdas es usando la opción Borrar formatos dentro de INICIO > Borrar.

Borrar formatos en Excel

Figura 1. Borrar formatos en Excel

La siguiente opción que podemos usar es Copiar y Pegar el formato de una celda sin formato a las celdas que queramos restablecer el formato.

Copiar y pegar formatos en Excel

Figura 2. Copiar y pegar formatos en Excel.

Elegir los formatos a restablecer con macros en Excel

Como vimos en las opciones anteriores, Excel nos permite restablecer formatos de celdas, con la salvedad de que restablece todo a su formato original.

He desarrollado un formulario en Excel vba en el que podemos elegir el tipo de formato que queramos restablecer mediante 5 Cuadros de opción.

Cómo funciona

El formulario contiene 5 CheckBoxes los cuales nos van a permitir restablecer hasta 6 opciones de Formato de celdas. Éstos controles nos permitirán hacer combinaciones. Las opciones que se podrán restablecer son:

    1. Formato de número.
    2. Alineación.
    3. Tipo y color de fuente.
    4. Bordes.
    5. Relleno.

Las opciones anteriores también se podrán encontrar en Formato de celdas con la combinación [Ctrl] + 1.

Restablecer formatos de celda con macros en Excel

Figura 3. Restablecer formatos de celda con macros en Excel.

Código de las macros de vba

Código del formulario

'---------------------------------------------------------------------------------------
' Module    : frmFormato
' Author    : MVP Sergio Alejandro Campos
' Date      : 21/08/2015
' Purpose   : Formulario para restablecer formatos de celdas
'---------------------------------------------------------------------------------------
'
'Mandar llamar el Procedimieno para restablecer Formatos
Private Sub CommandButton1_Click()
'
Call RestablecerFormatos
'
End Sub
'
'Cerrar el Formulario
Private Sub CommandButton2_Click()
'
    Unload Me
    '
End Sub
'
'Elegir todas las opciones del Formulario
Private Sub CommandButton3_Click()
'
With Me
    .chkAlineacion.Value = True
    .chkBordes.Value = True
    .chkFuente.Value = True
    .chkNumero.Value = True
    .chkRelleno.Value = True
End With
'
End Sub

Código del Módulo1

'---------------------------------------------------------------------------------------
' Module    : Módulo1
' Author    : MVP Sergio Alejandro Campos
' Date      : 21/08/2015
'---------------------------------------------------------------------------------------
'
Sub LlamarFormulario()
'Mandar llamar el formulario
    frmFormato.Show vbModal = False
'
End Sub
'
Sub RestablecerFormatos()
'
'Restablecer Formato de número
If frmFormato.chkNumero.Value = True Then
'
For Each Celda In Selection
'
If IsDate(Celda.Value) Then
    Celda.NumberFormat = "d-mmm"
Else
    Celda.NumberFormat = "General"
End If
Next Celda
'
End If
'
'Restablecer Alineación
If frmFormato.chkAlineacion.Value = True Then
'
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
'
End If
'
'Restablecer Fuente
If frmFormato.chkFuente.Value = True Then
'
    With Selection.Font
        .Name = "Calibri"
        .FontStyle = "Normal"
        .Size = 11
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontMinor
    End With
'
End If
'
If frmFormato.chkBordes.Value = True Then
'
With Selection
    .Borders(xlDiagonalDown).LineStyle = xlNone
    .Borders(xlDiagonalUp).LineStyle = xlNone
    .Borders(xlEdgeLeft).LineStyle = xlNone
    .Borders(xlEdgeTop).LineStyle = xlNone
    .Borders(xlEdgeBottom).LineStyle = xlNone
    .Borders(xlEdgeRight).LineStyle = xlNone
    .Borders(xlInsideVertical).LineStyle = xlNone
    .Borders(xlInsideHorizontal).LineStyle = xlNone
End With
'
End If
'
'Restablecer color de relleno
If frmFormato.chkRelleno.Value = True Then
'
    With Selection.Interior
        .Pattern = xlNone
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
'
End If
'
End Sub

Anexos

:: Descargar Restablecer formato de celdas en Excel con macros – EXCELeINFO.rar

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *