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.
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