Agendar execução de processos no Excel (Schedule)

Splash Screen com Gif Animado no Excel (Tela de Abertura)
Splash Screen com Gif Animado no Excel (Tela de Abertura)
15 de maio de 2011
Análise de Balanço - Excel
Planilha de análise de balanço – Excel
18 de maio de 2011

Objetivo: Demonstrar a utilização do agendamento de processos no Excel. Neste exemplo é criada uma agenda que fala quando á tarefas pendentes.

Neste exemplo você tem a demonstração do uso de várias técnicas explicadas em vários artigos no Guia do Excel.

Foram utilizados:

  1. Zebrar Planilhas
  2. Controle de Cheques com VBA
  3. Planilha que fala

Além das técnicas acima foi utilizado um recurso ainda não explicado, o Agendamento de execuções no Excel

Este procedimento executa um procedimento que é chamado em determinado horário conforme abaixo, no exemplo abaixo é chamado o procedimento MyMacro disparado ás 15:00.

Application.OnTime TimeValue("15:00:00"), "MyMacro"

Na planilha observando o código fonte você verá o exemplo de um agendamento recursivo dos dados que foi baseado em um exemplo exibido no livro VBA e Macros para Microsoft Excel 2007 de Bill Jelen e Tracy Syrstad.

O objetivo do agendamento na planilha é realizar a atualização da planilha a cada dois minutos, realizando um novo agendamento a cada execução do procedimento.

Abaixo o código fonte com os comentários:

Public Sub lsExecutaAtualizacao()
    Dim lRange As Range

    Set lRange = Selection
    
    'Atualiza o horário na planilha
    ActiveWorkbook.RefreshAll
    Range("F1").Select
    ActiveCell.FormulaR1C1 = "=NOW()"

    lRange.Select

    'Realiza a identificação se há alguma tarefa em aberto
    If Range("E1").Value > 0 Then
        'Aqui você pode escolher a execução do alarme ou 
        'de um alerta de voz da quantidade de agendamentos
        'Caso queira o alarme, descomente o código abaixo e comente a linha Application...
        'Alarme
        Application.Speech.Speak Text:="You have " & Range("E1").Value & " events"
    End If

End Sub
'Procedimento que agenda uma nova execução a cada execução
Public Sub lsSchedule()
    Dim lHoras      As Integer
    Dim lMinutos    As Integer
    Dim lSegundos   As Integer

    lHoras = 0
    lMinutos = 2
    lSegundos = 0

    NameOfThisProcedure = "lsSchedule"
    NameOfScheduleProc = "lsExecutaAtualizacao"

    'Hora atual mais dois minutos
    lProximo = Time + TimeSerial(lHoras, lMinutos, lSegundos)
    'Realiza o agendamento do procedimento
    Application.OnTime EarliestTime:=lProximo, Procedure:=NameOfThisProcedure

    'Executa a execução da atualização da planilha
    Application.Run NameOfScheduleProc
End Sub

Sub Alarme()
    Dim j As Integer

    For j = 1 To 3
        Beep
        start2 = Now() + TimeSerial(0, 0, 1)
        Application.Wait start2
    Next j
End Sub

GUT PPT

Abraço

Marcos Rieper


Clique aqui e leia mais sobre Excel VBA. https://www.guiadoexcel.com.br/vba/ O Guia do Excel foi criado por Marcos Rieper e oferece artigos, dicas, tutoriais e modelos de planilhas prontas. Aqui você encontra tudo sobre Excel, seja de nível básico, intermediário,  avançado e VBA. O Guia do Excel oferece diversos materiais completamente gratuitos para download. Navegue em nosso site e confira! Conheça também a nossa Loja do Excel https://loja.guiadoexcel.com.br/
Cursos

Curso Excel Completo – Curso Excel Básico + Curso Excel Avançado – Acesso Vitalício

R$218,00 R$179,00

COMPRAR
Cursos

Curso Excel Master – Curso Excel Básico + Curso Excel Avançado + Curso VBA Excel + LP – Acesso Vitalício

R$357,00 R$249,00

COMPRAR
Cursos

Curso Excel PRO – Curso Excel Avançado + Curso VBA Excel + Lógica de programação – Acesso Vitalício

R$258,00 R$199,00

COMPRAR
Cursos

Curso Excel Web – Curso VBA Excel + Lógica de programação + Curso Web Scraping VBA- Acesso Vitalício

R$388,90 R$309,00

COMPRAR

4 Comentários

  1. André Luis disse:

    Ola gostei do seu trabalho.
    Gostaria de saber se por acaso voce sabe como fazer para que o excel, ao darmos um enter, ele venha 1º ler um texto no excel e em seguida reproduzir um mp3 externo. Silaba apos silaba. Sei que é quase um programa, mas gostaria de uma orientação.
    Obrigado desde já.

  2. ótimo trabalho e de muito contribuição para os amantes do Excel

  3. Valmir Lima disse:

    Olá, como faço para usar essa planilha? Eu não sei muito de excel e gostaria desta planilha para ser lembrado de açoes que devo tomar durante o meu expediente de trabalho, que no caso são relatorios em horários pre definidos…De que forma ela avisa, são mensagens na tela ou alarmes?

    E parabéns Marcos pelo ótima iniciativa de dividir seus conhecimentos comm todos nós!

    Obrigado pela ataenção!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Inscreva-se no nosso canal do Youtube!


Junte-se ao nosso canal do Youtube. Começamos em abril de 2016, mas já temos mais de 06:00 h de treinamentos gratuitos e este número irá aumentar. Vídeos novos todos os sábados.