Formatação Userfom ...
 
Notifications
Clear all

Formatação Userfom Textbox como moeda.

5 Posts
2 Usuários
0 Reactions
1,281 Visualizações
(@finaljustice)
Posts: 91
Estimable Member
Topic starter
 

Boa tarde,

Estou criando uma interface em que pego o valor total e assim que o usuário escolhe qual bandeira de cartão vai usar e dependendo do valor ele oferece as opções de parcelamento. Fiz tudo funcionar, embora esteja com problema com a formatação de uma das Textbox, a que exibiria o valor da parcela.

A exibição do valor da parcel é iniciado pela rotina quando o um Combobox é mudado:

Private Sub ComboBox1_Change()
Dim parcel As Integer
Dim vlrparcel As Double
parcel = UserForm5.ComboBox1
vlrparcel = Totped / parcel
Format(UserForm5.TextBox2.Value, "$###,##.00") = vlrparcel
End Sub

Não consigo fazer essa Textbox2 mostrar o valor como moeda, se eu deixar "Userform5.Textbox2 = vlrparcel" o valor aparece corretamente só que sem o simbolo da moeda.

Abaixo a rotina quando a userform é exibida:

Private Sub UserForm_Initialize()
Sheets("Pedido").Select
UserForm5.TextBox1 = Format(Sheets("Pedido").Range("J1048576").End(xlUp), "$###,##.00") ' inserir valor total do pedido na textbox
Totped = Sheets("Pedido").Range("J1048576").End(xlUp)  ' processo repetido para conseguir efetuar calculo, pois ao tentar fazer indicando os objetos somente (Textbox1/Combobox1) dava erro por incompatibilidade
End Sub

Abaixo o código de quando o usuário escolhe uma bandeira através da escolha de optionbuttons que carregam as parcelas na combobox.

Private Sub OptionButton1_Click()
If UserForm5.OptionButton1.Value = True Then
UserForm5.ComboBox1.Enabled = True
    If Totped > 1500 Then
        For i = 1 To 6
         UserForm5.ComboBox1.AddItem i
        Next i
        Else
        For i = 1 To 3
         UserForm5.ComboBox1.AddItem i
        Next i
        
    End If
End If
End Sub

Alguém poderia me ajudar, todo lugar e as vezes que usei sempre usei a formatação assim: "Format([oq desejo formatar], "$###,##.00"), na inicialização da userform utilizo desse mecanismo.

Obrigado pela atenção,
Att,
FJ

 
Postado : 26/07/2013 1:51 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Tente algo do tipo...faça sua adaptação!!

 TextBox1 = Format(TextBox1, "$#,##0.00") 
 
Postado : 26/07/2013 2:37 pm
(@finaljustice)
Posts: 91
Estimable Member
Topic starter
 

Boa tarde!!

Tente algo do tipo...faça sua adaptação!!

 TextBox1 = Format(TextBox1, "$#,##0.00") 

Obrigado por responder prontamente,

Alterei meu código para isso:

Private Sub ComboBox1_Change()
Dim parcel As Integer
Dim vlrparcel As Double
parcel = UserForm5.ComboBox1
vlrparcel = Totped / parcel
UserForm5.TextBox2 = vlrparcel
Format(UserForm5.TextBox2, "$###,##.00") = UserForm5.TextBox2
End Sub

Como o valor está vindo de uma variável tentei colocar ela na textbox e depois formatar ela... mas continuo com erro "O Objeto é obrigatório" na última linha aonde estou tentando colocar a formatação.

Alguma outra idéia???
abços.
FJ

 
Postado : 26/07/2013 2:56 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Altere :
Format(UserForm5.TextBox2, "$###,##.00") = UserForm5.TextBox2

Por :
UserForm5.TextBox2 = Format(TextBox2, "$###,##.00")

[]s

 
Postado : 26/07/2013 3:19 pm
(@finaljustice)
Posts: 91
Estimable Member
Topic starter
 

Altere :
Format(UserForm5.TextBox2, "$###,##.00") = UserForm5.TextBox2

Por :
UserForm5.TextBox2 = Format(TextBox2, "$###,##.00")

[]s

Ohhhhh...
hehehehe
Boa ai sim funcionou!
Muito obrigado!
FJ

 
Postado : 26/07/2013 3:36 pm