Como suprimir mensagens de aviso do VBA
Se você excluir pastas de trabalho ou tabelas sob controle de macro ou realizar outras operações sérias, o Excel perguntará ao usuário, após iniciar a macro, se isso é realmente o que você deseja. A ilustração a seguir mostra a aparência da janela:
Basicamente, esta janela é certamente útil, pois evita a exclusão acidental de dados importantes. Em muitos casos, a janela é irritante e confusa para o usuário. Imagine uma solução VBA em que as tabelas para as etapas de cálculo interno devem ser criadas e, em seguida, excluídas. Então, a janela de mensagem causa dificuldades para o usuário, pois o usuário não tem como saber como a macro funciona internamente.
Nesses casos, faz sentido desligar a janela de aviso. Porque você pode fazer isso usando a propriedade DisplayAlerts O valor que Falso atribuir. A macro a seguir faz isso e, em seguida, exclui a primeira folha da tabela na qual a macro está localizada:
Sub SwitchWarningOff ()
Application.DisplayAlerts = False
ThisWorkbook.Sheets (1) .Delete
Application.DisplayAlerts = True
End Sub
A macro não exibe uma mensagem de aviso porque a mensagem de aviso foi desativada com o primeiro comando. Antes que a macro termine, todas as mensagens de advertência são ativadas novamente. Lembre-se disso! A cada comando com o qual você DisplayAlerts sobre Falso definido, há também um comando que você pode usar para ativar a janela de aviso novamente após sua macro ter executado a operação correspondente que pode levar a uma janela de aviso. Você pode ligar atribuindo o valor Verdade.