DUVIDA NO REPLACE PARA CASAS DE MILHARES
tenho um campo numerico do tipo DUPLO, pois uso casa decimais
uso numero como 0,050 ou 0,550 ou 0,001 ou seja 3 casas decimais
para poder atualizar meu estoque fiz o seguinte código:
esse código tira da minha quantidade no estoque a quantidade q está no grid... até ai tudo funcionando blz
agora meu cliente cliente começou a vender 1000, 2000... ou seja, vender milhares...
quando coloco para rodar esse código ele dar um erro, pois ele pensa que 2.000,000 (2 mil) é 2.000.000 (2 milhoes)
ou seja, ele troca a virgula por ponto e ai fica 2 milhoes...
como faço para resolver pois tenho q vender de 0,001 até 10.000,000 ?
uso numero como 0,050 ou 0,550 ou 0,001 ou seja 3 casas decimais
para poder atualizar meu estoque fiz o seguinte código:
For i = 1 To Grid.Rows - 1
execSQL [Ô]UPDATE PRODUTOS SET QUANT_ESTOQUE = QUANT_ESTOQUE - [Ô] & Replace(Grid.TextMatrix(i, 5), [Ô],[Ô], [Ô].[Ô]) & [Ô] WHERE CODIGO = [Ô] & Grid.TextMatrix(i, 2) & [Ô][Ô]
Next
esse código tira da minha quantidade no estoque a quantidade q está no grid... até ai tudo funcionando blz
agora meu cliente cliente começou a vender 1000, 2000... ou seja, vender milhares...
quando coloco para rodar esse código ele dar um erro, pois ele pensa que 2.000,000 (2 mil) é 2.000.000 (2 milhoes)
ou seja, ele troca a virgula por ponto e ai fica 2 milhoes...
como faço para resolver pois tenho q vender de 0,001 até 10.000,000 ?
o ideal seria vc primeiro excluir o ponto depois trocar a virgula por ponto assim
ou seja:
10.000,000 passa a ser 10000,000 depois 10000.000
veja se o código acima funciona
For i = 1 To Grid.Rows - 1
execSQL [Ô]UPDATE PRODUTOS SET QUANT_ESTOQUE = QUANT_ESTOQUE - [Ô] & Replace(Replace(Grid.TextMatrix(i, 5), [Ô].[Ô], [Ô][Ô]),[Ô],[Ô],[Ô].[Ô]) & [Ô] WHERE CODIGO = [Ô] & Grid.TextMatrix(i, 2) & [Ô][Ô]
Next
ou seja:
10.000,000 passa a ser 10000,000 depois 10000.000
veja se o código acima funciona
cara, usa replace() com cdbl() , uso sempre assim, nunca da problema, pois o cdbl [Ô]tira[Ô] o ponto do milhar.....
valor = [Ô] & replace(cdbl(variave),[Ô],[Ô],[Ô].[Ô]) & [Ô]
valor = [Ô] & replace(cdbl(variave),[Ô],[Ô],[Ô].[Ô]) & [Ô]
Tópico encerrado , respostas não são mais permitidas