Ok.
Havia entendido que você queria inserir na célula o valor do textbox no formato de moeda...
Mas o que você quer é uma máscara para o TextBox de modo que quando o usuário digitar no TextBox fique no formato de moeda. Não é isso?
Pois bem. Nesse caso, desabilite esse evento KeyPress que você utilizou e utilize o mesmo código den tro do evento Exit do TextBox. Assim, sempre que o usuário digitar o valor no textbox e sair do TextBox, o mesmo adotará o formato de moeda.
Assim, desabilite esse evento:
Private Sub txtValor_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'txtValor = Format(txtValor, "R$ #,###0.00")
End Sub
E habilite esse evento:
Private Sub txtValor_Exit(ByVal Cancel As MSForms.ReturnBoolean)
txtValor = Format(txtValor, "R$ #,###0.00")
End Sub
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
Postado : 19/05/2014 1:28 pm