CASAS DECIMAIS
estou com essa rotina, nao consigo obter o centavos no resultado do valor..
oq pode esta acontecendo ?
oq pode esta acontecendo ?
Private Sub CmdDescontos_Click()
Dim A As Integer
Dim B As Integer
Dim C As Integer
Dim Total As Double
'-----------------------------------------------------
A = txtImposto.Text
B = txtTotalPagar.Text
C = txtDesconto.Text
Total = (A - B + C)
txtTotalLiquido.Text = Val(Total)
End Sub
troca o Val por CDBL
isso resolve
a declaração para integer tira os centavos...pois integer é inteiro...
tente tambem
formatar o resultado assim
att,
marcelo bressan
tente tambem
formatar o resultado assim
Total = format(cdbl(A) - cdbl(B) + cdbl(C), "#,##0.00;(#,##0.00)")
att,
marcelo bressan
Formata também...
Total = (A - B + C)
txtTotalLiquido.Text = format(cdbl(Total),"###,###,##0.00")
Total = (A - B + C)
txtTotalLiquido.Text = format(cdbl(Total),"###,###,##0.00")
Ops é tudo integer dai nunca vai ter centavos...
Pra trabalhar com valores tem que ser tudo DOUBLE (centavos) melhor que usar o CURRENCY que não existe mais nas versões mais novas do VB.
Pra trabalhar com valores tem que ser tudo DOUBLE (centavos) melhor que usar o CURRENCY que não existe mais nas versões mais novas do VB.
Meu é o seguinte
o problema tb ta nas variaeis
coloque Single ou Long ou Double ao inves de integer ok
ok amigos deu certo, porem o resultado esta assim: -150,00
como fosse negativo
como fosse negativo
Moreira é o seguinte:
Nessa sequencia q vc fez: Total = (A - B + C), tenta assim
Total = Format((A - (B + C)), "Currency" ou "#,##0.00;(#,##0.00)")
Substitua o A, B e C pelos Texts com o Cdbl antes...ta ligado!?
té mais..boa sorte
Private Sub CmdDescontos_Click()
Dim A As Double
Dim B As Double
Dim C As Double
Dim Total As Double
A = txtImposto.Text
B = txtTotalPagar.Text
C = txtDesconto.Text
Total = forma(cdbl(A) - cdbl(B) + cdblC)
txtTotalLiquido.Text = abs(Total)
fiz desta forma, mesmo assim ainda o resultado em como negativo..
exemplo: -150,00
end sub
Dim A As Double
Dim B As Double
Dim C As Double
Dim Total As Double
A = txtImposto.Text
B = txtTotalPagar.Text
C = txtDesconto.Text
Total = forma(cdbl(A) - cdbl(B) + cdblC)
txtTotalLiquido.Text = abs(Total)
fiz desta forma, mesmo assim ainda o resultado em como negativo..
exemplo: -150,00
end sub
Faz isso
Total = cdbl(A) - (cdbl(B) + cdbl(C))
txtTotalLiquido.Text = format(Total, "Currency")
boa sorte
Total = cdbl(A) - (cdbl(B) + cdbl(C))
txtTotalLiquido.Text = format(Total, "Currency")
boa sorte
Dim A As Double 'Cria as variáveis
Dim B As Double
Dim C As Double
Dim Total As Double
'Essãs linhas são necessárias para não causar erro quando não tiver valor nas textBox.
if TxtTotalPagar.Text="" then TxtTotalPagar=0
if TxtImposto.Text="" then TxtImposto=0
if TxtDesconto="" then TxtDesconto=0
'Atribui Valores das textboxs as variáveis. Aqui a váriavel A recebe o valor maior e os valores das variáveis B e C não devem ser maior que a variável A pois não teria sentido.
A = cdec(txtTotalPagar.Text) 'Atribui Valor
B = cdec(txtImposto.Text)
C = cdec(txtDesconto.Text)
Total = formatcurrency(A-B-C,2,vbTrue,vbTrue,vbTrue) 'Faz o Cálculo
Tópico encerrado , respostas não são mais permitidas