Sumar cajas de texto y calcular solo las que tenga valor numérico y descarte la que tenga texto

Señores expertos cómo puedo hacer una función o fórmula con macros de tal manera que me sume las cajas de texto así tenga letras es decir si tengo una sumatoria de 3 cajas de texto y 2 de ellas tienen valor numérico y la otra texto que solo sume las que tenga número y descarte la que tiene letra. Así como adjunto en la imagen y me lo guarde.

1 Respuesta

Respuesta
1

Yo lo haría así, esta macro lee todos los objetos del formulario y se enfoca en los textbox cuando los identifica entonces comprueba que son numéricos de ser así realiza la suma colocando el resultado en la variable X

Private Sub CommandButton1_Click()
For Each Control In UserForm1.Controls
    tipo = UCase(TypeName(Control))
    If tipo = "TEXTBOX" Then
        If IsNumeric(Control.Text) Then X = X + Val(Control.Text)
    End If
Next Control
MsgBox (X)
End Sub

La macro completa es esta

Private Sub CommandButton1_Click()
TextBox5.Text = 0
For Each Control In UserForm1.Controls
    tipo = UCase(TypeName(Control))
    If tipo = "TEXTBOX" Then
        If IsNumeric(Control.Text) Then x = x + Val(Control.Text)
    End If
Next Control
TextBox5.Text = x
filas = Range("a3").CurrentRegion.Rows.Count
With Range("a3")
    .Cells(filas + 1, 1) = TextBox1.Text
    .Cells(filas + 1, 2) = TextBox2.Text
    .Cells(filas + 1, 3) = TextBox3.Text
    .Cells(filas + 1, 4) = TextBox4.Text
    .Cells(filas + 1, 5) = TextBox5.Text
End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas