Usando o Excel como controle de tempo em treinamentos

Quando narrei aqui a odisséia do dia do meu aniversário eu mencionei a super-planilha que montei como cronograma/controle de tempo do curso. Aquela, que, como eu disse…

20071011

…se atualizava automaticamente, em tempo real, mostrando o ponto onde o curso estava (de verde) e onde deveria estar (em vermelho), e também o atraso estimado, em minutos, em um outro canto da tela. O legal é que a coluna "progresso" vai colorindo automaticamente, para mostrar o quanto cada item do cronograma deveria estar concluído. Assim, na hora do curso, você sabe visualmente quanto tempo tem para terminar de ensinar cada assunto.

Testei a planilha na prática, no treinamento que dei hoje. Funcionou muito bem – terminei o dia à frente do cronograma, por sinal.

Para baixar a planilha, é só clicar aqui (53 KB). Ela usa macros, então para que ela funcione você precisa habilitar macros no seu Excel. Coloque o nível de segurança "médio" em Ferramentas/Opções, aba "Segurança", botão "Segurança de Macro". Para poder usar a planilha e projetar um PowerPoint ao mesmo tempo, use outra dica minha: Como usar outros programas em um notebook sem interromper a projeção em um datashow.

Muita gente também quis saber como a planilha funcionava, então lá vai. Clique no "Mais >>" aí embaixo… (cuidado! conteúdo nerd!)

O uso "basicão" da planilha é assim: você coloca cada um dos assuntos, ou etapas, do curso ali do lado esquerdo e coloca a duração de cada um deles na coluna "duração". A hora de início e de término são calculadas automaticamente. Aí basta clicar em "ativar relógio" para ele começar a contar a hora e as funcionalidades da planilha entrarem em ação.

Planilha

A mágica da planilha é assim: o relógio é simplesmente uma célula com a fórmula "=AGORA()". As células que são coloridas de verde/vermelho usam formatação condicional (Formatar/Formatação Condicional): se o valor da célula for menor do que a hora atual, colore de vermelho.

A barra de progresso nada mais é do que 10 células, uma do lado da outra. Cada uma tem uma fórmula que faz com que o valor da célula seja igual a o valor da célula à esquerda mais 10% da duração daquela etapa. Complicou? Veja a figura abaixo:

 20071025_2

Aí é só usar, nas células da barra de progresso, a mesma formatação condicional: se o valor da célula for menor do que a hora atual, ela fica vermelha.

Acontece que a função "Agora()" retorna a hora apenas quando o Excel calcula a planilha. E o Excel só calcula a planilha se você altera alguma coisa nela. A solução foi uma pequenina macro, que batizei de "Atualiza" (quaaaanta criatividade), que é disparada quando você marca/desmarca a caixinha "Ativar relógio".

Sub Atualiza()
    Worksheets(1).Calculate
    If ChkAtualizar = True Then
        Application.OnTime Now + TimeValue("00:00:01"), "Plan1.Atualiza"
    End If
End Sub

A macro faz, basicamente, duas coisas:

1) Atualiza a planilha (dando um "calculate")
2) Se a caixinha (ChkAtualizar) estiver marcada, manda executar a mesma macro novamente, daqui a um segundo, usando o método "OnTime".

Além disso, o atraso estimado, mostrado no canto superior direito, nada mais é do que a diferença entre a hora atual e a hora de término da última etapa (ou assunto) do curso que você marcou como concluída. Se você estiver adiantado, ele mostra a palavra "adiantado" e o tempo estimado de adiantamento. A fórmula é um pouquinho grande porque usa a função "DESLOC" para descobrir qual a hora de término da última etapa concluída. Consulte a ajuda do Excel para entender como ela funciona.

É isso. Usem os comentários para dúvidas, elogios ou xingamentos por eu ter programado em Excel VBA. Pois quem é nerd sabe que programar em VB é pecado mortal…

36 thoughts on “Usando o Excel como controle de tempo em treinamentos”

  1. Muito bom, Primo… Aproveitando horrores o treinamento, hein?

    Ficou bem bacana, mas que é triste ter que programar em VBA, isso é…

  2. Show! Valeu pelas dicas!!! Simples, porém bastante funcionais!!

    “Tem coisas que só o VB faz por vc…” rsrsr
    Um abraço.

  3. Genial!!! 😀
    Putz, Excel realmente faz horrores de coisas!
    Isso me lembrou as coisas medonhas que eu fazia em arquivo BAT lá no início dos anos 90…

  4. Zé,
    como faco para esta planilha calcular atrasos relacionados a dias?
    IE: Um projeto comeca nod ia 06 de novembro… mas ira começar no dia 08 e esta previsto para acabar no dia 10..
    mesma situacao mas com dias ao inves de horas.
    Se tu puder (e nao for pedir muito) rola de me mandar uma que faça isso?

  5. Jose carlos, bom dia.
    Não sou programador, mas achei funcional a planilha. Na minha máquina não consigo ativar o relógio, só com excel não dá certo, teria que intalar algum programa?

    Dorival

  6. Bom dia, Gostei da sua ideia do relógio no excel e tentei alterar para minha necessidade, mas não funciona, pode me ajudar?
    Quero que o relógio ative,qdo a1=1,se colocar outro valor,desativa.
    Abaixo esta o VBA alterado,que não funcionou.
    No seu projeto tambem não entendi como o excel identifica a mudança na caixinha.

    Sub Atualiza()
    Worksheets(1).Calculate
    If range(“a1”)= 1 Then
    Application.OnTime Now + TimeValue(“00:00:01”), “Plan1”
    End If
    End Sub

    Desde ja agradeço, Kurt

  7. Sub Atualiza()
    Worksheets(1).Calculate
    If range(“a1”)= 1 Then
    Application.OnTime Now + TimeValue(“00:00:01”), “ATUALIZA”
    End If
    End Sub

    Desde ja agradeço, Kurt

  8. Bom dia,
    Quero saber como faço para ter a planilha de controle de treinamentos. Se há custos e como posso adquirir se for possível. Aguardo retorno.

  9. Jonades, acho que você não viu mas a planilha está disponível pra download. No próprio post tem um link.

    Bem, de qualquer forma, clique aqui para baixar. Lembre-se que ela, como todo o resto do conteúdo deste blog, é licenciada Creative Commons – você pode usar como quiser desde que dê os devidos créditos ao autor (no caso, eu).

  10. bacana..
    estou tentando fazer uma parecida para controlar tempo de serviços executadas em campo. acho que tem que ser em banco de dados
    pois preciso colocar o códiogo este terá um tempo para ser executado quando terminar o tempo soar um alarme

  11. Ola, alguem pode me ajudar… apenas quero colocar um relogio na planilha, que funcione jundo com o relogio do pc.. tem como isso…?

  12. gostaria de maiores informações para manter um relógio na planilha excell que funcione junto com o relógio do pc utilizado, tem como isso ? com o objetivo estatístico: tantos dias, horas e minutos, segundos (em tempo real) sem acidentes!

    Outra informação: tem como na planilha ser preenchida como “CÉDULA DE VOTAÇÃO” para efetuar eleição da CIPA ?

    Aguardo

  13. Será que teria como vc ensinar a fazer esse relógio com o macro para disparar passo a passo.

    Gostei d+ desta planilha fiz umas modificações aqui só que em outra planilha e gostaria de fazer esse relógio nesta outra planilha de meu trabalho

  14. Boa tarde, eu estiu elaborando uma planilha de controle de produçao e gostaria de saber qual função posso usar pra fazer contagem de dias de atraso…????

  15. ola amigos gostaria de calcular tempo em minha locadora de games tipo hora entrada e hora saida digamos assim ele fala que quer 0,50 que da 20 minutos quero que quando eu colocar 0,50 na celula e calcularar automaticamnete os minutos
    ou seja preencehr a celular sozinho ja com o tempo de 20 minutos

  16. Muito bom!
    Gostaria apenas de tirar uma dúvida: como excluir o conteúdo das Partes do Curso? Não consigo excluir as linhas sem perder as fórmulas!!!

  17. Boa tarde! Estou precisando de uma planilha que calcule para mim a frequencia diária de alunos.

    As funcionalidades seriam essas:
    Quando o aluno entrar na escola o relógio dele é ativado e após completar 50 minutos, ele marca na coluna da planilha que o aluno assistiu o primeiro horário e continua após completar mais 50 minutos o ele marque que o aluno assistiu o 2º horário e assim sucessivamente até o 5º horário.
    Depois grava essas informações e no dia seguinte faz o mesmo processo. E ao final do mês eu consigo ver quantas presenças o aluno teve e quantas faltas.Se alguém tiver alguma dica eu agradeço.

  18. Parabéns!

    Realmente vc foi o que mais simplificou esse processo inserindo relógio no excel, para muitos parece algo simplório, mas confesso que quebrei muito a cabeça com isso tbm.

  19. Obrigado por compartilhar seu conhecimento…
    Valeu mesmo pelas dicas postadas aki. Explicando de forma objetiva, com muita clareza…
    Deus te abençoe

  20. Buen dia Primo agradeceria mucho si tuviese email msn que pudiese ajudarme a aplicar la macro que activa el reloj ja que no consigo que sea constante.

  21. bom dia !!!

    gostaria de usar essa planilha sua na empresa , como eu posso modificar ela ?? tentei colar ela mais dai o botao de ativacao nw funciona , vc pode me ajudar ????

  22. Olha essa planilha foi muito bem bolada.
    Realmente foi muito bom você compartilhar conosco e melhor ainda que tem o passo a passo de como utiliza-lá.

  23. Primo, achei super legal essa planilha e me ajudou muito. Somente um pedido, nao sei se é ssimples, mas eu tenho que fazer com que, cada vez que eu assinalar, escrever ou alterar uma celula, a celula do lado precisa ficar marcado o hoorario e o dia que eu fiz a alteração. Tentei com a função agora(), mas, claro, ela atualiza sempre. Será que pode me ajudar?

  24. Boa Tarde. Será que vc pode me ajudar?
    Preciso inserir um cronometro na minha planilha do excel, mas não estou achando na internet nada parecido com o que eu necessito.

    O tipo de cronometro que preciso e assim?

    EQUIPE “A” EQUIPE “B”
    INICIO (PAUSA) INICIO

    o cronometro é para marcar quanto tempo a ‘EQUIPE’ permaneceu com a posse de bola.

    Onde quando uma ‘EQUIPE A’ esta com a posse clica-se no “INICIO’ e quando ela perde para a outra ‘EQUIPE B” clica-se no ‘PAUSA’ se esta “EQUIPE B” permaneceu com a bola clica-se no ‘INICIO’e começa a marcar o tempo que eles esta com a posse de bola.

    sera que vc pode me ajudar?
    obrigado

  25. Ola tudo bem? Baixei a planilha mas a contagem de tempo nao funciona na minha maquina…tenho que ativar alguma coisa? Poderia me ajudar? a planilha é exelente!

  26. Olá! Primeiramente quero parabenizá-lo pela planilha. Fico ótima.
    Gostaria da sua ajuda pois estou desenvolvendo uma planilha de controle do tempo de utilização dos veículos da empresa que trabalho, porém eu preciso que a planilha informe o operador quando o tempo de atendimento chegar no limite do nosso indicador, entretanto não estou conseguindo fazer ela entender isso.
    Na hora do calculo com a função AGORA() ela não da certo. Segue o exemplo: =SE(tempo inicial+indicador<=agora();"OK";"aviseOp").

    Desde já agradeço.

  27. Oi estou procurando uma planilha para controlar tempo de serviço de carros, consigo controlar vários carros em uma mesma planilha com tempo de serviços diferentes?

Deixe uma resposta

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