O Excel-VBA tem em seu ponto forte exatamente automatizar tarefas rotineiras.
Como programar para este executar a mesma tarefa, todos os dias, num determinado horário?
Uma forma muito boa de fazer isto é utilizando o agendador de tarefas do Windows.
Digamos que queremos executar uma macro assim:
Sub macroAExecutar() Range("a1") = "Executado às " & DateTime.Now() End Sub
A primeira coisa a fazer é chamar esta macro a ser executada na abertura do arquivo – na função workbooks_open().
Private Sub Workbook_Open() Call macroAExecutar 'ThisWorkbook.Close End Sub
A seguir, configurar o agendador de tarefas do windows para abrir este arquivo.
Criar tarefa, dar um nome.
Definir a frequência e horários em que a ação será disparada.
Definir o nome do arquivo a ser aberto.
É isso.
Alguns cuidados:
Habilitar macros por default – senão o excel vai pedir confirmação de macros, o que exige intervenção manual.
Desabilitar mensagens na macro (aquelas do tipo: “Deseja salvar antes de fechar?”)
Application.DisplayAlerts = false
O computador deve estar ligado, para executar a tarefa. Mas ele pode estar bloqueado, sem problemas.
Arnaldo Gunzi.
Ideias técnicas com uma pitada de filosofia: https://ideiasesquecidas.com
Ferramentas Excel-VBA: https://ferramentasexcelvba.wordpress.com/
Você precisa fazer login para comentar.