Usuário com melhor resposta
Contas com float

Pergunta
-
Boas pessoal, preciso de fazer uma conta do tipo float (nuemros decimais), mas como eu estou a fazer é como se o numero estivesse inteiro, não assume o que está depois da virgula. o preco eu vou buscar à base de dados mas la tenho como float o tipo. podem ajudar??
[code=vb]
Dim b, c, subtotal As Doubleb = Val(txtquant.Text)c = Val(txtpreco.Text)subtotal = b * cLbtotal.Text = subtotal[/code]
Respostas
-
Em "txtpreco.Text" o preço aparece como? Separado com vírgula ou com ponto?
Se você estiver programando em um sistema que usa as opções regionais (Windows >> Painel de Controle) como no Brasil, tem que ser vírgula, se não tem que ser ponto e assim vai...
Se não é simples:
Public Sub Test() Dim b As Double, c As Double, subtotal As Double c = CDbl(txtquant.Text) d = CDbl(txtpreco.Text) subtotal = b * c Lbtotal.Text = subtotal End Sub
Veja se funciona.
- Sugerido como Resposta SammuelMiranda terça-feira, 22 de abril de 2014 12:07
- Marcado como Resposta Giovani Cr terça-feira, 22 de abril de 2014 18:43
Todas as Respostas
-
- Editado Herbert Lausmann terça-feira, 15 de abril de 2014 22:20
- Sugerido como Resposta Diego de Almeida Barreto (Lewis) terça-feira, 15 de abril de 2014 22:26
-
-
-
Dim b, c, subtotal As Double
b = Val(txtquant.Text.Replace(",", "."))
c = Val(txtpreco.Text.Replace(",", "."))
subtotal = b * c
Lbtotal.Text = subtotaljotamax, a função VAL retorna o valor no tipo double, e esse tipo de dados é representado o separador das casas decimais por ponto(".") então usei o replace para se caso o usuario digite virgula(",") no calculo ele substitua por ponto para o calculo ocorrer corretamente
caso vc queira exibir o valor em R$ na label vc pode usar a funçao format({Valor a ser formatado}, {formato})
lbltotal.text = "R$ " & Format(subtotal, "0.00")
-
-
-
Em "txtpreco.Text" o preço aparece como? Separado com vírgula ou com ponto?
Se você estiver programando em um sistema que usa as opções regionais (Windows >> Painel de Controle) como no Brasil, tem que ser vírgula, se não tem que ser ponto e assim vai...
Se não é simples:
Public Sub Test() Dim b As Double, c As Double, subtotal As Double c = CDbl(txtquant.Text) d = CDbl(txtpreco.Text) subtotal = b * c Lbtotal.Text = subtotal End Sub
Veja se funciona.
- Sugerido como Resposta SammuelMiranda terça-feira, 22 de abril de 2014 12:07
- Marcado como Resposta Giovani Cr terça-feira, 22 de abril de 2014 18:43