Página 1 de 1
ProgressBar Constante
Enviado: 24 Set 2019 às 17:16
por AndreVitor
Boa Tarde pessoal do Guru !
Eu estou querendo fazer uma progress bar da seguinte situação:
* Vou rodar um ensaio que irá durar 180 dias, sendo que cada dia eu irei coletar dados diferentes. A minha ideia é criar uma planilha aonde eu tenha a data de início do ensaio, a data fim do ensaio (180 dias após o início) e a data com a função HOJE(). Tendo essas informações em mãos eu calculo quantos dias de ensaio já se passaram e cálculo a porcentagem desse número sobre o total de dias, com esse valor eu gostaria de ter uma Progress Bar que me mostre o progresso do ensaio de acordo com o avanço do mesmo e que fique sempre visível na planilha.
Eu fiz um macro de exemplo porém ele não cabe ao exemplo que eu dei acima. Gostaria de saber de vocês se existe alguma possibilidade de fazer o que eu estou propondo com UserForm. Se a resposta for não, gostaria de saber se existe alguma outra alternativa para seguir.
No mais, muito obrigado pela atenção.
ATT
André Vitor Barbosa Souza
Re: ProgressBar Constante
Enviado: 24 Set 2019 às 19:56
por Jimmy
Olá Andre,
Segue planilha com o ProgressBar.
Coloquei ela logo abaixo da célula onde está "% do Projeto Concluído :".
Como esse progresso vai se alterar apenas 1 vez ao dia, não tem a necessidade de atualizar constantemente. Programei pra atualizar toda a vez que a planilha é aberta.
A macro está no "Módulo1". Não se decepcione: só tem uma instrução mesmo, isso é tudo.
Se quiser testar, altere o valor da célula L6 (data de hoje) colocando outras datas, e depois clique na barra, porque eu programei ela pra se atualizar quando clicada.
É possível mover a Barra de lugar na planilha: clique direito sobre ela, pega pela linha externa (não pega ela pelo meio pois trata-se de 2 objetos agrupados, e arrastar pelo meio pode deslocar um em relação ao outro) e arrasta pra outro canto. Pode redimensionar também, arrastando os quadradinhos (não arraste pelo meio).
Se realmente quiser a barra em um form, avise que altero, mas acho que ela na planilha é mais prático. Se você, por exemplo, colocar ela na linha 1, e congelar paineis, ela pode nunca sair da tela.
Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.
Jimmy San Juan
Re: ProgressBar Constante
Enviado: 26 Set 2019 às 16:24
por AndreVitor
Jimmy escreveu:Olá Andre,
Segue planilha com o ProgressBar.
Coloquei ela logo abaixo da célula onde está "% do Projeto Concluído :".
Como esse progresso vai se alterar apenas 1 vez ao dia, não tem a necessidade de atualizar constantemente. Programei pra atualizar toda a vez que a planilha é aberta.
A macro está no "Módulo1". Não se decepcione: só tem uma instrução mesmo, isso é tudo.
Se quiser testar, altere o valor da célula L6 (data de hoje) colocando outras datas, e depois clique na barra, porque eu programei ela pra se atualizar quando clicada.
É possível mover a Barra de lugar na planilha: clique direito sobre ela, pega pela linha externa (não pega ela pelo meio pois trata-se de 2 objetos agrupados, e arrastar pelo meio pode deslocar um em relação ao outro) e arrasta pra outro canto. Pode redimensionar também, arrastando os quadradinhos (não arraste pelo meio).
Se realmente quiser a barra em um form, avise que altero, mas acho que ela na planilha é mais prático. Se você, por exemplo, colocar ela na linha 1, e congelar paineis, ela pode nunca sair da tela.
Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.
Jimmy San Juan
Jimmy, achei genial sua solução.
Se não for muito abuso poderia me explicar como tu fez esse Array de 3 caixas de formulário ? Gostaria de saber poque eu pretendo introduzir mais um com a % de conclusão escrita no meio da barra.
Re: ProgressBar Constante
Enviado: 26 Set 2019 às 18:20
por Jimmy
Olá André,
Obrigado, mas a solução não é minha, eu a aprendi em algum momento do passado, e agora a uso e repasso.
Em linhas gerais você faz assim:
Cria duas caixas de texto de iguais tamanhos (finas e compridas como as barras de progresso), preenche uma com fundo branco, e a outra com fundo azul e sem borda. Depois coloca metade de uma sobre a outra, e verifica se a azul está por cima da branca. Se não tiver, mande-a para a frente para que fique por cima da branca. Agora posicione a azul exatamente sobre a branca de forma que só se veja a azul.
Via VBA você verifica o comprimento delas (propriedade .Width da caixa de texto) e anota o valor; no seu caso o valor é 185.
Depois seleciona as duas e agrupa apenas pra evitar que sejam desmembradas sem querer ao arrastar. Atribuir uma macro também ajuda, porque evita que sejam selecionadas com 1 clique normal. Mesmo que seja uma Sub vazia, sem instruções.
Quando quiser atualizar a barra de progresso você multiplica o 185 (comprimento total) pelo percentual de progresse. Por exemplo, se for 30%, ficará 55,5. Ai você altera o tamanho da azul (.Width) para esse valor. Quando chegar a 100%, ela terá o tamanho total de 185, cobrindo completamente a branca.
Por se tratar de uma caixa de textos, você pode mover o % para ela, e ele será exibido. Crie uma terceira, sem borda ou preenchimento, e que deve ficar em cima das outras duas. (parágrafo editado)
No seu caso, a macro atualiza o percentual apenas na abertura da planilha (evento open), e quando tecla-se sobre a figura.
Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.
Se tiver dúvidas, avise.
Jimmy San Juan
ProgressBar Constante
Enviado: 26 Set 2019 às 23:25
por Jimmy
Amanhã vou anexar a planilha com a barra com o percentual no centro.
Re: ProgressBar Constante
Enviado: 27 Set 2019 às 19:28
por Jimmy
Olá Andre,
Segue a planilha com barra de progresso com percentual.
Limpei a área apagando os módulos e formulário referentes ao outro método, que você queria implementar
Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.
Jimmy San Juan