Para tí que haces macros en Excel restablece configuraciones después de hacer pruebas

En este artículo les comparto una macro que restablecerá algunas configuraciones que suelen modificarse al momento de escribir macros y que por alguna razón la ejecución se detiene u olvidamos regresarlas a su estado original.

Configuraciones

En otro artículo publico una lista de tips para programar macros en Excel y en base a ese artículo es que las siguientes configuraciones las podemos regresar a su estado normal.

Application.StatusBar = True / False

Esta opción nos permitirá definir un mensaje personalizado en la barra de estado de Excel. Si definimos la propiedad FALSE le dejamos el control a Excel que muestre sus propios mensajes.

Application.Calculation = xlCalculationAutomatic / xlCalculationManual

El cálculo manual se define cuando nuestras macros modifican gran cantidad de celdas que pueden contener o modificar fórmulas. Al término de la macro lo correo es dejar en cálculo automático.

Application.DisplayAlerts = True / False

Si no queremos que durante la ejecución de nuestras macros Excel nos mande avisos, dejamos la propiedad en False. Al terminar la ejecución la devolvemos a True. Un ejemplo de aviso es cuando nos informa que el libro no ha sido guardado y que si deseamos guardar.

Application.ScreenUpdating = True / False

Esta configuración nos ayuda a que si nuestra macro realiza muchos movimientos de celdas o cambios de hojas podemos indicarle con el valor False que se detenga la pantalla y al final ver el resultado cambiando a la propiedad True.

Restablecer configuraciones en Excel

Figura 1. Aviso de las configuraciones que se restablecerán.

Código de la macro

Como vemos, si no hacemos uso correcto de los valores en las anteriores configuraciones, pueden suceder accidentes como que las fórmulas no se actualicen o que Excel no nos prevenga por alguna pérdina de datos.

Usa la siguiente macro para restablecer las configuraciones a sus valores por defecto.

Sub RestablecerConfiguraciones()
'
Dim Msj As String
Dim Resp1 As Boolean
'
Const TITULO = "EXCELeINFO"
'
Msj = "Desea restablecer las configuraciones básicas de Excel ?" & vbNewLine & vbNewLine
Msj = Msj & "Recomendadas para programadores:" & vbNewLine & vbNewLine
Msj = Msj & "> Restablecerr texto de barra de estado (Application.StatusBar = False)" & _
      vbNewLine & "> Restablecer cálculo automático (Application.Calculation = xlCalculationAutomatic)" & _
      vbNewLine & "> Restablecer alertas (Application.DisplayAlerts = True)" & vbNewLine & _
      "> Restablecer actualización de pantalla (Application.ScreenUpdating = True)"
'
Resp1 = MsgBox(Msj, vbYesNo + vbQuestion, TITULO)
'
If Resp1 = vbNo Then Exit Sub
'
With Application
    .StatusBar = False
    .Calculation = xlCalculationAutomatic
    .DisplayAlerts = True
    .ScreenUpdating = True
End With
'
End Sub

You may also like...