Excel planilha vba textboxes operadores matematicos

Qui, 19 de Maio de 2011 11:45 Expedito Marcondes
Imprimir

Saberexcel - o site de quem precisa Aprender Macros Microsoft Excel VBA

Como usar operadores matémáticos em objetos TextBox, multiplicação, divisão, adição, subtração, a questão do erro com vírgula em textbox, segue abaixo o procedimento correto, usando keyAsscii no Evento KeyPress da TextBox. Espero que exemplo possa ajudá-los.
Fiquem com Deus. Expedito Marcondes.
Esses procedimentos abaixo, foram retirados da:
COLEÇÃO 15.000 MACROS MICROSOFT EXCEL VBA, FÓRMULAS E FUNÇÕES.
Prezada Aluna Cristiane, oss erros são devido ao separador decimal "." ponto em vez de "," vírgula.
'para não ter que digitar a vírgula, que fica no outro teclado, coloque a
'linha abaixo no evento KeyPress da TextBox
'esta linha converte automaticamente "." em ","
If KeyAscii = 46 Then KeyAscii = 44

'************************************************************
 (Nos MÓDULOS COMO FAZER  há muitos exemplos  de Planilhas de como trabalhar com textboxes, comboboxes, listboxes, frames, labels, commandbuttons etc..).
'************************************************************
Para enviar os valores para planilha
Activecell.value = (Val(TextBox1.text) - Val(Textbox2.text))
 
'Adição
Private Sub CommandButton1_Click()
On Error Resume Next '
TextBox1 = Val(TextBox2) + Val(TextBox3)
End Sub
'..................'
'Subtração
Private Sub CommandButton2_Click()
On Error Resume Next '
TextBox1 = Val(TextBox2) - Val(TextBox3)
End Sub
'..................'
'multiplicação
Private Sub CommandButton3_Click()
On Error Resume Next '
TextBox1 = Val(TextBox2) * Val(TextBox3)
End Sub
'..................'
'Divisão – veja a formatação que pode ser usada.
Private Sub CommandButton4_Click()
On Error Resume Next '
TextBox1 = Format(CDbl(TextBox2) / CDbl(TextBox3), "#,##0.00")
End Sub
'..................'
'Limpar
Private Sub CommandButton5_Click()
    TextBox1.Value = "" '
    TextBox2.Value = ""
    TextBox3.Value = ""
End Sub

Private Sub CommandButton6_Click()
Unload Me
End Sub
 
 
'
************************************************************
 
Private Sub CommandButton1_Click()
'Troca "virgula" por "ponto" que é a notação do VBA para números
    Cells(1, 1) = Val(Application.Substitute_
(TextBox1.Value, ",", "."))
   'Caso queira o valor arredondado com duas casas decimais use:
   'Cells(1, 1) = Application.Round(Val(Application.Substitute_
(TextBox1.Value, ",", ".")), 2)
End Sub
 
Private Sub TextBox1_Change()
'Troca a digitação de "ponto" por "virgula"
   TextBox1.Value = Application.Substitute(TextBox1.Value, ".", ",")
End Sub


Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel

Tags:
Última atualização em Sáb, 13 de Outubro de 2012 08:24