Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

yogodoshi

Converter campo da tabela para numero decimal

Recommended Posts

receitas = receitas + rs_receitas("valor")sei que o comando pra transformar em numero decimal eh CDBL neh?ficaria como?receitas = receitas + CDBL("rs_receitas("valor")")acho que meu erro está aí... fica dando "Type mismatch: 'Cdbl'"sendo que nesse campo no banco só constam números.... como converto na marra os números para poder somá-los?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acredito que o erro estão nas aspas dentro do CDBL, tente assim:

receitas = receitas + CDBL(rs_receitas("valor"))
Lembrando que CDbl, converte para Double, para converter para inteiro use CInt e para longo use CLng.

Compartilhar este post


Link para o post
Compartilhar em outros sites

affeu juro q tinha tentado isso e n tinha ido 0.o -_- o.0 !pq com as aspas ele tava interpretando como texto neh? aff q coisa bizarra... serah q eu nao uploadei qnd fui tentar dessa manera antes? :Smas é isso ae, brigadao denovo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Outra dúvida galera, e dessa vez eu SUBI e testei os arquivos antes de perguntar e tb soh pra avisar: antes de fazer essa pergunta eu pesquiseis os topicos sobre "type mismatch" no forum xD

valor_d = 0valor_d = CDBL(rs_despesas("valor"))despesas = despesas + valor_dtotal_d = cint(despesas(2))
Com

total_d = cint(despesas(2))

ou

total_d = cdbl(despesas(2))

dah o mesmo erro de type mismatch !alguem sabe o motivo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que é despesas(2) ? Você está acessando como se fosse um vetor e em cima como variável comum.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Camarada,

 

Provavelmente despesas(2) esta igual a "".

 

Fiz um teste:

v = ""Response.Write "resultado =  " & cdbl(v)Response.End
E retornou:

Microsoft VBScript runtime error '800a000d' Type mismatch: 'cdbl' /res_dados.asp, line 4
você pode trocar o valores "" no vetor por 0.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

keria transformar em um número com 2 casas decimais mas já vi que escrevi errado :Sviajei completamente era pra ser: total_d = formatnumber(despesas,2)serah q assim vai funcionar? mal ae galera, viajei bunito :S

Compartilhar este post


Link para o post
Compartilhar em outros sites

Camaradas,

 

Sem querer ser chato e nem repetitivo, mas já sendo, pois vou repetir basicamente o que disse no ultimo post.

 

Mas fiz uns testes e msm com FORMATNUMBER se a variável despesas(2) estiver "" retornará erro.

 

Veja os exemplos.

 

Usando o CDBL em variávies com conteúdo "":

<%v = ""Response.Write "resultado =  " & cdbl(v)Response.End%>
Retorna este erro:
Microsoft VBScript runtime error '800a000d'Type mismatch: 'cdbl'/res_dados.asp, line 4
Usando o FORMATNUMBER em variáviescom conteúdo "":

<%v = ""Response.Write "resultado =  " & formatnumber(v)Response.End%>
Retorna este erro:
Tipos incompatíveis: 'formatnumber'
Portanto lembre-se qualquer um dos comandos só fucionará se o conteúdo de sua variável preenchido.

 

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

As funcões que trabalham com números não aceitam variáveis vazias (""), se a variavel for vazia (""), troque o valor dela para 0, pois se você passar qualquer número entre aspas "0", ele vai funcionar corretamente, só não funciona com "".

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.