Após a execução de uma macro no Excel, não há nenhum botão para revogá-la, a menos que você feche o livro e escolha não salvá-lo.
Existe uma maneira simples e fácil de revogar isso?
fonte
Após a execução de uma macro no Excel, não há nenhum botão para revogá-la, a menos que você feche o livro e escolha não salvá-lo.
Existe uma maneira simples e fácil de revogar isso?
A resposta curta é que você não pode desfazer (suponho que isso é o que você quer dizer com revogar) as ações de uma macro. As decisões que ocorrem dentro da linguagem de programação podem ser problemáticas para o Excel reverter, portanto, há um estado geral "Não é possível desfazer" induzido pelo início da macro.
A resposta longa é que, se você antecipar a necessidade do Desfazer, seu código deve acomodar essa solicitação armazenando o estado anterior dos dados antes da execução. Essa é uma suposição muito ampla de que você está trabalhando com dados no VBA; A criação e manipulação diretas de arquivos podem ser mais complicadas, dependendo do que é executado.
John Walkenbach é um bom exemplo de armazenamento de dados para fornecer um futuro recurso de recuperação:
Usuários de computadores estão acostumados com a capacidade de "desfazer" uma operação. Quase todas as operações que você realiza no Excel podem ser desfeitas. Se você programar em VBA, talvez tenha se perguntado se é possível desfazer os efeitos de uma sub-rotina. A resposta é sim. A resposta qualificada é que nem sempre é fácil.
John Walkenbach, Spreadsheetpage.com
Eu acho que sua declaração de abertura é um pouco enganosa: para usuários não-codificadores, a resposta é "não, você não pode desfazer uma macro".
Sim, você pode desfazer todas as ações de uma macro. Esta é uma macro abaixo atribuída a um botão DO.
Use conteúdo claro.
fonte