Flecha Postado Junho 15, 2011 Denunciar Share Postado Junho 15, 2011 Meus amigos,Estou com um simples programinha que montei para agrupar gastos de veiculos com manutenção.Um Form de cadastro dos gastos, indexado pelo nº de patrimonio que usa a tabela gastoUm Form que mostra o Veiculo (patrimonio) da tabela Viaturas1 com um subform que mostra os gastos para aquele patrimonio, pegando da tabela gasto.Nesse Fomulário tem um Total dos Gastos da viatura em tela.Problema:Quando tem valor o total aparece normal (certo)Quando não tem gasto para o veiculo aparece #ERRO no campo.Como posso fazer aparecer Zeros (0,00) ou ficar em branco o campo quando não tem valores a somar?Disponibilizei o download do arquivo nesse link:http://www.filefactory.com/file/ccd3ab3/n/Teste.mdb Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MrMALJ Postado Junho 16, 2011 Denunciar Share Postado Junho 16, 2011 Utilize a função NZ() para tratar o resultado nulo que pode estar causando o erro. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flecha Postado Junho 16, 2011 Autor Denunciar Share Postado Junho 16, 2011 (editado) Estive analisando a frase #ERRO aparece devidoo form principal passar por todos os registros da tabela viatura, que por sequencia o subform irá mostrar os gastos (valores) dos registrosque coincidirem o patrimônio (relação comum entre as tabelas)Assim quando eu paro num registro que não tem o coincidente na tabela gasto a soma total aparece o #ERRO.Como posso fazer para se não tiver coincidente entre as duas tabelas ao navegar pelos registroso campo som nõa mostre nada, fique em branco ou com um 0,00. Editado Junho 16, 2011 por Flecha Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MrMALJ Postado Junho 20, 2011 Denunciar Share Postado Junho 20, 2011 Como disse antes colega utilize a função NZ(), nesse caso na própria consulta que originará os dados.select nz(seucampo;0) as apelido from SuaTabela; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flecha Postado Junho 21, 2011 Autor Denunciar Share Postado Junho 21, 2011 Não si como porque não estou uzando select e sim essas formulas nos campos:Np subform o campo subtotal1 a fonte do controle é essa =Soma([preço])No form principal o campo Total Geral a fonte do controle é essa =[Gasto subformulário novo].Formulário!Subtotal1Já coloquei esse NZ de toda forma e não dá certo Baixe o exemplo para constatar, se puder.Grato Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Humm Postado Junho 27, 2011 Denunciar Share Postado Junho 27, 2011 (editado) bom, esse erro pode ter varias causas..se for erro devido a tratamento de valores nulos, você pode usar o NZ() como já disseram..exemplo..=soma([campo1]*[campo2]) tratando com NZ() =soma(nz([campo1])*nz([campo2])) o certo é rastrear a causa do erro.. porem se de toda forma voce não conseguir se livrar do ERRO.. use uma funcao seimed() que retorne nulo ou zero quando ocorrer erro. 'sintaxe: 'seimed(expressao; valor se verdadeiro; valor se falso) 'retornando nulo caso erro = verdadeiro: =seimed(iserror([campo_total]); ""; [campo_total]) 'retornando zero em vez de nulo: =seimed(iserror([campo_total]); "0"; [campo_total])vlw Editado Junho 27, 2011 por Humm Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flecha Postado Julho 7, 2011 Autor Denunciar Share Postado Julho 7, 2011 (editado) Pessoal, agradeço a todos pela dicas.Como todas as dicas não davam certo na formula, eu verifiquei num exemplo do Access o BD padrão Northwindque tinha uma tela igual e funcionava ao contento sem NZ.Verifiquei que a fonte de dados vinha de uma consulta incluindo as duas tabelas e ai estava meu erro.Na minha vinha de uma consulta de uma só tabela.Criei a nova consulta incluindo a tabela de Viaturas e a de gastos (amarradas pelo campo Patrimonio) e deu certinho.Obrigado a todos. Editado Julho 7, 2011 por Flecha Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Sandra Queiroz Neves Postado Março 7, 2017 Denunciar Share Postado Março 7, 2017 Tenho esta expressão:Expr1: Direita([Parcela_Descricao];Compr([Parcela_Descricao])-2)Mas quando o campo está vazio ele fica com %erro. Como faço tirar este %erro e deixar ela ficar 0 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MrMALJ Postado Março 20, 2017 Denunciar Share Postado Março 20, 2017 Este tópico já esta resolvido, nas proximas vezes abra outro tópico caso não consiga usar os resolvidos como exemplo pra sua solução, mas vou abrir uma exceção: Expr1: Direita([Parcela_Descricao];Compr(nz([Parcela_Descricao],0))-2) Em caso de Parcela_descrição for nulo, ele retorna zero. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Flecha
Meus amigos,
Estou com um simples programinha que montei para agrupar gastos de veiculos com manutenção.
Um Form de cadastro dos gastos, indexado pelo nº de patrimonio que usa a tabela gasto
Um Form que mostra o Veiculo (patrimonio) da tabela Viaturas1 com um subform que mostra os gastos para aquele patrimonio, pegando da tabela gasto.
Nesse Fomulário tem um Total dos Gastos da viatura em tela.
Problema:
Quando tem valor o total aparece normal (certo)
Quando não tem gasto para o veiculo aparece #ERRO no campo.
Como posso fazer aparecer Zeros (0,00) ou ficar em branco o campo quando não tem valores a somar?
Disponibilizei o download do arquivo nesse link:
http://www.filefactory.com/file/ccd3ab3/n/Teste.mdb
Obrigado
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.