Creando una calculadora, codificación del botón de = erronea

Estoy codificando una calculadora básica en vba dentro de ms access, casi codifico la calculadora completa, solo tengo problemas con el botón de =, la lógica es la siguiente:

  • Declaro 3 variables(a, b, c)
  • se supone que cuando dé el botón de = me resuelva la ecuación (a+b= c)

presiono un botón del 1 al 9, aparece el número(o los números que quiera) en un textbox luego hundo operador de suma (+) por ejemplo, el campo se limpia y guarda el valor previamente en una variable (a), luego inserto otro número en la variable (b) y se supone que cuando dé el botón de igualdad(=) me dé el resultado pero lo que el programa hace es devolverme el segundo valor (b) solamente...

Mi código cuando abre la forma de calculadora, cuando presiono el botón del operador y cuando presiono el botón de igualdad(=) respectivamente:

Que me falta?? :/

Private Sub Form_Load()
Dim a As Double
Dim b As Double
Dim c As Double
Dim op As Double
End Sub
Private Sub Operations()
If op = 1 Then
c = a + b
Me.txtEntry_Result.DefaultValue = c
End If
If op = 2 Then
c = a + b
Me.txtEntry_Result.DefaultValue = c
End If
End Sub
Private Sub cmdEqualT_Click()
 b = Me.txtEntry_Result.DefaultValue
 Call Operations
End Sub

1 Respuesta

Respuesta
1

No declares las variables en el evento al cargar, hazlo en el propio módulo, debajo del Option...

Option Compare Database
'Declara las variables a nivel de módulo
Dim a As Double
Dim b As Double
Dim c As Double
Dim op As Double
Private Sub Form_Load()
...

También veo que no le asignas a "a" valor en ningún momento, y por eso siempre te devuelve solo el segundo valor...

Y si las dos operaciones son la misma (c=a+b) no es necesario que hagas los dos Ifs en Operations()

Un saludo!


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas