Barra de Progresso em Excel VBA

Barra de progresso em Excel VBA.

Barra de progresso em Excel VBA

 

A barra de progresso serve para mostrar o tempo de execução de um programa. Quando desenvolvemos um programa em Excel VBA e bem relevante colocarmos uma barra de progresso para sabermos o tempo de execução do programa ao iniciar o sistema. Podemos utilizar uma alternativa para a visualização do progresso da tarefa na execução do sistema, isso fica mais intuitivo e você vai aguardar o processo da barra ser concluído até o final.

Vamos usar uma barra de progressão com porcentagem para mostrar o processo de inicialização em tempo real.

O código Excel VBA apresentado aqui é simples, com o objetivo de visualizarmos a barra de progresso durante a execução do programa. E você pode aplicar este mesmo conhecimento para outros casos basta adaptar o código a cada projeto.

Veja o passo a passo da criação da Barra de progresso em Excel VBA

Inicia o Excel depois clique na guia desenvolvedor ou pressione Alt+F11 para abrir o VBA (Visual Basic for Application).

Passo 01

Crie um novo formulário e insere a progressbar no formulário e vamos a codificação para fazer funcionar. Importante antes de inserir a progressbar e preciso fazer umas configurações básicas para o correto funcionamento, caso a opção da progressbar não apareça na sua caixa de ferramenta veja abaixo com fazer as configurações.

Clica com o botão direito do mouse e depois clicar em controle adicionais como esta marcado na imagem.

Barra de progresso em Excel VBA

Depois marque a caixa como esta selecionado com a marcação.

Barra de progresso em Excel VBA

Pronto a configuração já esta realizada, isso e em caso de não estiver aparecendo a opção da progressbar na caixa de ferramenta.

vamos da continuidade na codificação da nossa barra de progresso em Excel VBA. Segue os passos da imagem.

Barra de progresso em Excel VBA

O nosso formulário abaixo já esta criado, mais você vai inserir a a progressbar no próprio formulário o tamanho fica a seu critério não tem padrão não.

Barra de progresso em Excel VBA

Com o nosso formulário criado vamos a codificação dele agora. No modulo adicionado insere o código abaixo. Barra de progresso em Excel VBA

Barra de progresso em Excel VBA

E importante declarar as variáveis que vai usar caso seja diferente dessas aqui, para esse exemplo estamos usando apenas a variável Contador que faz a barra funcionar ate os 100%.

Esse outro codigo abaixo que é

Publis Sub Abrir()

UserForm1.Show

End Sub

e para chamar o nosso formulario la na planiha. Criamos um botão para facilita o nossos teste da barra de progresso em Excel VBA.

Barra de progresso em Excel VBA

Esse e o nosso botão para executar o código.

Barra de progresso em Excel VBA

Quando abrir o fomulário para chamar o nosso código criado no modulo mude a declaração para Initialize para quando iniciar o nosso formulário ele vai executar a nossa ação criada no modulo.

Barra de progresso em Excel VBA

Esse outro evento declarado usamos para quando concluir o processo da barra de progresso ele vai exibir uma msgbox personalizada do seu jeito informando que já foi concluído o progresso.

Sheets(“Planilha2”).Select com esse código estamos dizendo para ele assim que concluir o processo vá para a planilha2 que e onde temos uma tabela modelo como na imagem abaixo.

Barra de progresso em Excel VBA

A barra de progresso em funcionamento.

Barra de progresso em Excel VBA

Clicar em EstaPastaDeTrabalho do projeto VBA e selecione o evento Workbook e insere o código da imagem. Esse código vai executar a ProgressBar assim que a planilha for iniciada e em seguida assim que concluir o processo ele vai selecionar a planilha2 que e a segunda ação depois de carregar o progresso.

Mais…

Formatar número de telefone com 10 ou 11 dígitos

Como formatar CPF e CNPJ no Excel

Todos os atalhos de teclado no Excel

Como somar no Excel

Como usar a função SE

Fórmulas de Excel em testes de entrevista de emprego

Como criar sua primeira macro no Excel

Porque é Importante Aprender Excel

Pessoal mais informações tirar duvida comente abaixo que responderei a todos.