CONVERTER PONTO DECIMAL EM VIRGULA

HENRYMARQUES 23/06/2011 14:31:58
#377601
Boa tarde,
Gostaria de alguma dica de como eu devo fazer para converter o ponto decimal em virgula num textBox.
Na medida em que eu digitar 10.00 ele deve apresentar R$ 10,00

Gostaria de saber como fazer em detalhes.
Muito obrigado,
Henrique
TECLA 23/06/2011 15:34:18
#377610

Private Sub Text1_LostFocus()
If Trim(Text1.Text) <> [Ô][Ô] Then
Text1.Text = FormatCurrency(Replace(Text1.Text, [Ô].[Ô], [Ô],[Ô]), 2)
End If
End Sub
EDERMIR 23/06/2011 22:24:46
#377633
Citação:

:


Private Sub Text1_LostFocus()
If Trim(Text1.Text) <> [Ô][Ô] Then
Text1.Text = FormatCurrency(Replace(Text1.Text, [Ô].[Ô], [Ô],[Ô]), 2)
End If
End Sub


Uma pequena observação: Caso voce retorne ao TEXT1, o valor estará em formato CURRENCY, ou seja os PONTOS estão definindo a MILHAR e haverá um erro no LOSTFOCUS.

Para solucionar, complemente com:
Private Sub Text1_GotFocus()
If InStr(Text1.Text, [Ô]R$ [Ô]) <> 0 Then
Wvalor = Replace(Text1.Text, [Ô]R$ [Ô], [Ô][Ô])
Wvalor = Replace(Wvalor, [Ô].[Ô], [Ô][Ô])
Wvalor = Replace(Wvalor, [Ô],[Ô], [Ô].[Ô])
Text1.Text = Val(Wvalor)
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End If
End Sub
EDERMIR 24/06/2011 22:23:15
#377720
MENUDO.

A não ser que eu me equivoquei quando testei, a VIRGULA vai atrapalhar o contexto do LOSTFOCUS. Por isso mudei a vírgula por ponto (conforme a digitação inicial).

Para retornar ao simples valor digitado, removi o símbolo de moeda e testei com VAL (isso sim foi frescura).

No mais, a solução do TECLA já resolve o problema de nosso [Ô]amiguinho[Ô].
Tópico encerrado , respostas não são mais permitidas