Access - Formula en tabla y ejecute en codigo

 
Vista:

Formula en tabla y ejecute en codigo

Publicado por Mariano Diaz (1 intervención) el 12/06/2005 03:18:26
Como puedo ejecutar una formula que se encuentra en una tabla que va ha ser leida y que en codigo Visual Basic ejecute dicha formula, seria una especie de interprete. De ser asi tienes uno que me envies.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Ejecutar fórmulas almacenadas en una tabla usando Visual Basic

Publicado por Alejandro (4142 intervenciones) el 05/06/2023 20:22:23
En Access, puedes utilizar el objeto `Eval` para evaluar y ejecutar una fórmula almacenada en una tabla. El objeto `Eval` permite interpretar expresiones y ejecutarlas en tiempo de ejecución.

Aquí tienes un ejemplo de cómo puedes utilizar `Eval` en código Visual Basic para ejecutar una fórmula almacenada en una tabla:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Function EjecutarFormula() As Variant
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim formula As String
    Dim resultado As Variant
 
    ' Abrir la base de datos y el registro de la tabla que contiene la fórmula
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("NombreTabla")
 
    ' Mover al primer registro (asumiendo que solo hay uno)
    rs.MoveFirst
 
    ' Obtener la fórmula de la columna "Formula" (ajusta el nombre de columna según tu estructura de tabla)
    formula = rs("Formula")
 
    ' Cerrar el recordset y la base de datos
    rs.Close
    Set rs = Nothing
    Set db = Nothing
 
    ' Evaluar y ejecutar la fórmula utilizando el objeto Eval
    resultado = Eval(formula)
 
    ' Devolver el resultado
    EjecutarFormula = resultado
End Function

Asegúrate de reemplazar "NombreTabla" con el nombre de la tabla que contiene la fórmula y ajusta el nombre de columna "Formula" según la columna donde se almacena la fórmula en tu estructura de tabla.

Puedes llamar a la función `EjecutarFormula` desde cualquier parte de tu código para obtener el resultado de la fórmula almacenada en la tabla.

Ten en cuenta que el uso de `Eval` implica la evaluación de expresiones almacenadas en la base de datos, lo cual puede plantear problemas de seguridad si no se validan adecuadamente los datos de entrada. Asegúrate de que las fórmulas almacenadas sean seguras y de confianza antes de ejecutarlas con `Eval`.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar