View Full Version : VBA actualizar valor funçao excel


ed.j.afonso
10-03-2008, 11:35
Olá a todos!

Sou novo no fórum e no mundo da programação... Tenho apenas conceitos muuuito básicos sobre VB.

Bem, o meu prob é o seguinte: criei uma função (p MSExcel) que funciona bem e tudo mais, mas infelizmente qd altero o valor de uma célula tenho sempre de fazer f2+enter para que a função actualize/faça os cálculos com os novos valores. Como todos sabem isso nao acontece com as funções built-in do excel...

Se me pudessem ajudar agradecia... Já procurei na net e tal, mas as soluções apresentadas (qd sao apresentadas) nao funcionam...

Obrigado desde já!

Cumps

kzip
10-03-2008, 15:16
Experimenta, dentro da função, na primeira linha, colocar:

Application.Volatile

ed.j.afonso
10-03-2008, 15:30
Experimenta, dentro da função, na primeira linha, colocar:

Application.Volatile

Funcionou!
Thanks a lot! Andava há horas à procura da resposta...

kzip
10-03-2008, 16:44
fixe! :cool:
Só deves usar essa instrução quando for mesmo necessário, porque tem algum impacto nos recálculos.

ed.j.afonso
10-03-2008, 18:42
Já agora, que tipo de impacto?...
Tkx

kzip
11-03-2008, 10:14
Sempre que alteras o valor de uma qualquer célula, o excel automaticamente recalcula as fórmulas (que ele acha que podem estar desactualizadas).

Se a tua função for muito complexa (imagina que demora 1 segundo a ser processada), e a usares diversas vezes (por exemplo em 50 linhas), sempre que alterares um valor o excel vai demorar 1x50segundos a recalcular.

Claro que funções simples demoram.... milissegundos....:)

ed.j.afonso
11-03-2008, 11:44
Obrigado pela explicação...
A função em causa é muito simples... por isso o impacto deve ser minimo...
Mais uma vez obrigado...