Notifications
Clear all

Desativar Mensagem de Erro

8 Posts
4 Usuários
0 Reactions
1,581 Visualizações
(@carloshvb)
Posts: 99
Trusted Member
Topic starter
 

Bom dia pessoal,

Eu tenho uma planilha (em anexo) que faz alguns cálculos simples e atualiza um gráfico toda vez que aperto um botão.

O problema é que agora vou ter de zerar a planilha para o ano que vem mas quando faço isso aparece uma mensagem de erro. Mas se eu colocar novos dados o erro para.

Por isso eu gostaria de saber se tem como desativar esse erro enquanto o Range D3:I4 não estiver completamente preenchido.

Desde já agradeço a ajuda.

 
Postado : 03/12/2015 6:21 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

carloshvb,

Bom dia!

Não entendi... baixei a planilha mas não vi erro algum ocorrer. Quando é que esse erro ocorre? No exemplo enviado já não há dados na faixa D3:I4...

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 03/12/2015 7:16 am
(@carloshvb)
Posts: 99
Trusted Member
Topic starter
 

Wagner,

Eu já postei a planilha limpa onde o erro está ocorrendo, se você tentar alterar qualquer dado o excel dá o erro, por isso preciso desativar essa mensagem enquanto o range D3:I4 não contiver dados, depois que essas duas linha forem preenchidas o erro para.

 
Postado : 03/12/2015 8:25 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

carloshvb,

Desculpa a minha ignorância mas... continuo sem entender! Onde tenho que fazer alterações para que o erro ocorra. Sai digitando dados em alguns lugares (algumas células: B8, A7, D3, F3, F21, I24) e nada aconteceu...

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 03/12/2015 8:39 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Encontrei na mesma situação do Wagner, não apareceu nenhum erro, acho que acontece no arquivo original, e o que foi deletado são celulas com formulas ou dados que estão sendo utilizados por outras celulas ou o grafico, tambem vi que tem algumas formulas que se referem a um vinculo com outro arquivo "=Controle de troca de facas_teste[OEE.xlsm]Dados OEE SMBE 1'!A28" na aba Dados que está oculta.
Verifique se não é devido a isto, se não coloque o arquivo original.

[]s

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 03/12/2015 9:04 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Aqui quando abri o modelo o erro foi reproduzido, mesmo sem habilitar as macros.

O problema parece estar nos dados que alimentam seu gráfico.

A série "Meta" do gráfico se baseia no intervalo que está nomeado como "Meta" e a série "Produzido" pelo intervalo nomeado "Prod_Troca". Também há um intervalo nomeado como "Total_Troca" que alimenta o eixo das categorias no gráfico. O problema é que quando sua planilha está vazia, as fórmulas contidas tanto em "Meta" como em "Prod_Troca" e "Total_Troca" retornam erro #REF, pois elas usam a função DESLOC usando um argumento inválido.
Abra o Gerenciador de Nomes na guia Fórmulas e analise as fórmulas para esses nomes:

Meta
=DESLOC(Controle!$J$2;1;0;CONT.SE(Controle!$D$3:$D$100;">0");1)

Prod_Troca
=DESLOC(Controle!$I$2;1;0;CONT.SE(Controle!$I$3:$I$100;">0");1)

Total_Troca
=DESLOC(Controle!$D$2;1;0;CONT.SE(Controle!$D$3:$D$100;">0");1)

o problema é que no quarto argumento vc está usando a fórmula CONT.SE(Controle!$D$3:$D$100;">0") etc. que, quando sua planilha está vazia, retorna zero. Esse argumento refere-se à altura do intervalo, em número de linhas, e não pode ser zero.
Sugiro reescrever a fórmula para esses nomes, inserindo um teste primeiro para o CONT.SE. Copie e cole na caixa "Refere-se a" no Gerenciador de Nomes:

Meta
=SE(CONT.SE(Controle!$D$3:$D$100;">0")>0;DESLOC(Controle!$J$2;1;0;CONT.SE(Controle!$D$3:$D$100;">0");1);0)

Prod_Troca
=SE(CONT.SE(Controle!$I$3:$I$100;">0");DESLOC(Controle!$I$2;1;0;CONT.SE(Controle!$I$3:$I$100;">0");1);0)

Total_Troca
=SE(CONT.SE(Controle!$D$3:$D$100;">0")>0;DESLOC(Controle!$D$2;1;0;CONT.SE(Controle!$D$3:$D$100;">0");1);0)

Note que nesse caso o gráfico parte com a "Meta" zerada no início e não sei se isso é permitido pela política de sua empresa.

 
Postado : 03/12/2015 10:47 am
(@carloshvb)
Posts: 99
Trusted Member
Topic starter
 

Edson, obrigado pela resposta,

Eu cheguei a mesma conclusão que você, porém resolvi de forma um pouco diferente:

Mudei o Nome das 3 séries incluindo a função SEERRO com resposta igual a 1 para o erro.

Desta forma, quando apago os dados o valor inicial é fixado em 1 até que novos dados sejam inseridos.

A formula ficou assim:

=SEERRO(DESLOC(Controle!$J$2;1;0;CONT.SE(Controle!$D$3:$D$100;">0");1);1)

Repliquei o mesmo conceito para os outros nomes.

De qualquer forma, muito obrigado

 
Postado : 03/12/2015 11:16 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Entendi, o intervalo fica com altura de 1 célula. Boa solução também.
Precisando, disponha.

 
Postado : 03/12/2015 11:24 am