Evaluating expressions from strings in VBA

This page summarizes the projects mentioned and recommended in the original post on /r/vba

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
  • stdVBA

    VBA Standard Library - A Collection of libraries to form a common standard layer for modern VBA applications.

  • At that point, I decided to try the fabulous stdLambda tool, developed by u/sancarn. I found that stdLambda correctly evaluated all the corner cases that made Volpi's class fail. This fact excited me, so I decided to measure the time it took to evaluate an expression with variables, noticing that the u/sancarn library was quite efficient. At that point, I started to measure the performance by evaluating functions like sin, cos, tan, abs, the results seemed strange to me when I noticed that the performance was almost 50 times lower when compared to the results obtained when measuring the performance by evaluating expressions without calls to built-in functions.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • VBA-CSV-interface

    The power you need to cleanse, filter, sort, reshape, manage and analyze data from CSV files.

  • In spite of what I discovered, I was convinced that I could incorporate the referred library to CSV Interface, so I dedicated myself to study the methodology with which variables are handled in stdLambda. I found it difficult to understand why the variables must be passed in terms of a pre-established order ($1 refers to the first value passed as parameter of the evaluate function, $4 the fourth... and so on). Thus, the user is forced to write the expressions taking into account the order in which the values will be passed.

  • VBA-Expressions

    A powerful string expression evaluator for VBA and LO Basic, which puts more than 100 mathematical, statistical, financial, date-time, logic and text manipulation functions at the user's fingertips.

  • After a long search for something similar to the above, I decided to experiment and test the veracity of a warning that read: "... rather, it evaluates the infix expression directly. This approach is slightly more complicated than the traditional one". Then, I chose to develop an evaluator with its own grammar and a different approach to handle mathematical expressions. The solution I came up with is so called VBA Expressions. With VBA Expressions we can evaluate a variety of mathematical expressions, being able to work with arrays defined by text strings as in Java. A notorious feature is the ability to work with variables (Pi.e * 5.2Pie.1 + 3.1Pie), constants (3pi+ln(2e)), floating point numbers ((1.434E3+1000)*2/3.235E-5) and Boolean values (x>0 & Sqr(x-Ln(2))>=3 | tan(x)<0).

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Advanced CSV filtering through VBA

    2 projects | /r/vba | 6 Mar 2022
  • Eli Bendersky: Faster XML Stream Processing in Go

    1 project | news.ycombinator.com | 7 May 2024
  • Creation of the CSV interface community

    1 project | /r/vba | 8 Apr 2023
  • Meet a library member: CSVTextStream, the king of performance.

    2 projects | /r/CSVinterface | 8 Apr 2023
  • A tool to empower VBA

    2 projects | /r/CSVinterface | 6 Apr 2023