¿Como agregar una calculadora a mi Bd. Access?

¿Me gustaría saber como poner una calculadora en formulario Access y si existe algún ejemplo de como hacerlo?

1 Respuesta

Respuesta
2

Depende de que tipo quieras la calculadora. Por ejemplo, una que empecé, me aburrí y la dejé. Hace las operaciones que ves en los botones ¿amarillos?

La podrías poner en cualquier formulario.

Le he dado a Enviar

Si pongo, por ejemplo

Y pulso el botón de por (*), el rectángulo aparece en blanco y escribo

Cuando pulso =

Y el resultado lo puedes guardar en cualquier campo.

Si quieres te pongo el código

Buenos días Julián,  lo único que le faltaría es el % , envíame el código, a ver si la puedo adaptar.

Option Compare Database
Dim a As Double, b As Double, operacion As Variant
Private Sub Borrar_Click()
Me.Resultado = Null
End Sub
Private Sub Cero_Click()
Resultado = Nz([Resultado]) & 0
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Cinco_Click()
Resultado = Nz([Resultado]) & 5
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Cuadrado_Click()
Resultado = Resultado ^ 2
End Sub
Private Sub Cuatro_Click()
Resultado = Nz([Resultado]) & 4
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Decimal_Click()
Resultado = Nz([Resultado]) & ","
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Dividir_Click()
a = Resultado
Resultado = Null
operacion = "/"
End Sub
Private Sub Dos_Click()
Resultado = Nz([Resultado]) & 2
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Form_Close()
DoCmd.SetWarnings False
DoCmd.RunSQL "update resultado set resultado=null"
End Sub
Private Sub Form_Current()
DoCmd.SetWarnings False
DoCmd.RunSQL "update resultado set resultado=null"
Form.Refresh
Contador = 0
End Sub
Private Sub Igual_Click()
b = Resultado
Select Case operacion
Case Is = "+"
Resultado = CDbl(a + b)
Case Is = "-"
Resultado = CDbl(a - b)
Case Is = "*"
Resultado = CDbl(a * b)
Case Is = "/"
Resultado = CDbl(a / b)
End Select
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Nueve_Click()
Resultado = Nz([Resultado]) & 9
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Ocho_Click()
Resultado = Nz([Resultado]) & 8
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Por_Click()
a = Resultado
Resultado = Null
operacion = "*"
End Sub
Private Sub Raiz_Click()
Resultado = Sqr([Resultado])
End Sub
Private Sub Resta_Click()
a = Resultado
Resultado = Null
operacion = "-"
End Sub
Private Sub Seis_Click()
Resultado = Nz([Resultado]) & 6
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Siete_Click()
Resultado = Nz([Resultado]) & 7
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Suma_Click()
a = Resultado
Resultado = Null
operacion = "+"
End Sub
Private Sub Tres_Click()
Resultado = Nz([Resultado]) & 3
DoCmd.RunCommand acCmdSaveRecord
End Sub
Private Sub Uno_Click()
Resultado = Nz([Resultado]) & 1
DoCmd.RunCommand acCmdSaveRecord
End Sub

Los botones se llaman como indica, o bien el número o bien la operación.

Ok, me pongo con ello, y ya te contaré

Muchas gracias, amigo

Buenos días Julián:

He diseñado un formulario calculadora al que he llamado "F Calculadora".- Se trata de un formulario Independiente

los botones los mismos He llamado a los botones igual que tú, y he añadidos alguno más con la intención de darle funcionalidad, aunque de momento, solo he codificado los que tu tienes.

Pero me da error 3078 en la siguiente línea

DoCmd.RunSQL "update resultado set resultado=null"

Dice que no encuentra la tabla o consulta de entrada "Resultado"

Por otro lado, cuando ejecuto alguna operación, me sale esto

No lo tengo muy claro, pero parece que al código le falta algo, ¿Cómo puedo resolver esto?

En el primer caso tienes toda la razón, ya se sabe, el verano, la cabeza,... Resultado es una tabla con un sólo campo Resultado donde "guardo momentáneamente" los valores

Con respecto a lo de Cdbl, no es que lo haya diseñado yo, es algo que ya viene de fábrica con Access, son funciones de conversión igual que Cint, Clng, CDec,... convierten algo en entero, entero largo, decimal, etc.

Por si las moscas, mira a ver si tienes activada la referencia Microsoft XX.X Object Library

Lo de XX. X es por la versión del Office

Por ejemplo, supongamos que tengo un cuadro de texto con un numero decimal

Y quiero convertirlo en entero( que no admite decimales). Cuando pongo el cursor en Texto123

Y lo único que le he dicho, en el evento Al recibir el enfoque

Private Sub Texto123_GotFocus()
Texto123 = CInt([Texto121])
End Sub

José María, en vacaciones no se le puede pedir a nadie que piense. Por eso me acabo de acordar, ¿para qué hacer una calculadora? Si tengo el formulario

Y pulso el botón

Lo único que le digo, en el evento Al hacer clic es

Private Sub Comando125_Click()
Shell "C:\Windows\System32\calc.exe"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas