DataSet 0 Report post Posted April 1, 2005 Tenho no meu banco uma coluna do tipo string e nela armazeno valores:Ex: 5.465,32 - 845,60 - 4,65Como converter essas strings para números? Preciso somar valores neles...Não dá pra usar Cint/Int, pois ele converte para inteiro, aí perco as casas decimais.Então fiz assim: val = "5.465,32" conv = int("0"&replace(replace(val,".",""),",",""))Tirei os pontos e virgulas: conv = 546532 depois passei para inteiroDessa maneira posso fazer somas.Agora lá vai a dúvida :Existe um comando específico para transformar string em número? sem usar os replaces ??Valeu... Quote Share this post Link to post Share on other sites
0 cyberalexxx 0 Report post Posted April 1, 2005 Sinceramente nunca vi uma função que fizesse isso.Da uma olhada na documentação das funções vbscript, quem sabe existe alguma:Funções VBScript Quote Share this post Link to post Share on other sites
0 ViniciusJau 0 Report post Posted April 1, 2005 poxa to com uma duvida igual.... eu uso o cint e perco as casas decimais.......<% response.write Cint("12") %> pensei em mudar o tipo de campo do meu BD , mais acho que não tem um campo tipo numeor que aceite virgulas né ?? Quote Share this post Link to post Share on other sites
0 cyberalexxx 0 Report post Posted April 1, 2005 poxa to com uma duvida igual.... eu uso o cint e perco as casas decimais.......<% response.write Cint("12") %> pensei em mudar o tipo de campo do meu BD , mais acho que não tem um campo tipo numeor que aceite virgulas né ?? eu só trabalho com campo numérico, o q eu faço é dar um replace na virgula na hora de inserir os dados no banco. Quote Share this post Link to post Share on other sites
0 Guest Guest Report post Posted April 1, 2005 o SBDG (alguns) quando recebe esse tipo de informação pra gravar os dados, já converte para vc (desde q só tenha virgula e nenhum ponto)... outros disponibilizam funções para conversão direto na sql...UPDATE tabela SET valor='196,30' --> 196.30UPDATE tabela SET valor=FormatNumber('196,30') --> 196.30 '---consulte a documentação da base q você está usando Quote Share this post Link to post Share on other sites
0 fercosmig 0 Report post Posted April 1, 2005 dim vl1, vl2 vl1="6.000,50" vl2= "70.000,25" response.write vl1 & " -> (string)" & "<br>" response.write vl2 & " -> (string)" & "<br>" response.write CDbl(vl1) & " -> (double)" & "<br>" response.write CDbl(vl2) & " -> (double)" & "<br>" response.write CDbl(vl1) + CDbl(vl2) use a função CDbl() converte em double Quote Share this post Link to post Share on other sites
Tenho no meu banco uma coluna do tipo string e nela armazeno valores:
Ex: 5.465,32 - 845,60 - 4,65
Como converter essas strings para números? Preciso somar valores neles...
Não dá pra usar Cint/Int, pois ele converte para inteiro, aí perco as casas decimais.
Então fiz assim:
val = "5.465,32"
conv = int("0"&replace(replace(val,".",""),",",""))
Tirei os pontos e virgulas: conv = 546532
depois passei para inteiro
Dessa maneira posso fazer somas.
Agora lá vai a dúvida :
Existe um comando específico para transformar string em número? sem usar os replaces ??
Valeu...
Share this post
Link to post
Share on other sites