[VB6] Formules uitrekenen

Pagina: 1
Acties:

  • WimB
  • Registratie: Juli 2001
  • Laatst online: 30-03-2024
Ik zou graag in VB formules laten uitrekenen.
Als ik dus een string heb met volgende inhoud:

((300+15)*(16-6))/30

dan wil ik dus 105 verkrijgen

Ik heb er echter geen idee van hoe ik dit zou moeten aanpakken. Weet er iemand hoe je dit best oplost?

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:04
Wat heb je zelf al aan vooronderzoek gedaan?

https://fgheysels.github.io/


  • TwoR
  • Registratie: Augustus 2002
  • Laatst online: 28-08 08:57

TwoR

Gekleurde stippen

Als ik jou was zou ik eerst ff zoeken

  • Pooh
  • Registratie: April 2001
  • Niet online

Pooh

Lees eens een boek

Pfff... dat is nog niet zo eenvoudig. VB kent geen eigen parser voor zulke dingen, dus die zul je zelf moeten schrijven. (Je kunt ook op zoek gaan naar een kant en klare parser, zoek maar eens met google op "math expression parser")

  • WimB
  • Registratie: Juli 2001
  • Laatst online: 30-03-2024
Ik was aan het denken om met Split() te werken
Eerst de haakjes eruit halen enzo
Maar ik kan er gewoon geen zicht op krijgen
Het lijkt me echt niet eenvoudig als er bijvoorbeeld haakjes binnen haakjes staan enzo
Ik vraag dus geen kant en klare oplossingen, maar wel ideeën en tips...

Verwijderd

kijk eens op www.pscode.com

Verwijderd

't microsoft scripting control heeft zo'n handige eval functie..

  • JohanDM
  • Registratie: Augustus 2002
  • Laatst online: 16-07-2021

JohanDM

Optimist

De "Microsoft Script Control 1.0" bied functionaliteit voor het uitvoeren van VBScipt/JScript en het berekenen van formules.
Je plaatst de ScriptControl op een form en dan kan je er de Eval functie van aanroepen met een formule.
Waneer zo'n control met de naam ScriptControl1 op je form staat kun je volgende code gebruiken
Visual Basic .NET:
1
MsgBox ScriptControl1.Eval("1 + 1")

Dit geeft dan netjes 2 als resultaat.

"Two things are infinite: the universe and stupidity. And the former I'm not so sure about." -- Albert Einstein


  • WimB
  • Registratie: Juli 2001
  • Laatst online: 30-03-2024
Verwijderd schreef op 03 september 2002 @ 15:14:
't microsoft scripting control heeft zo'n handige eval functie..
JohanDM schreef op 03 september 2002 @ 15:19:
De "Microsoft Script Control 1.0" bied functionaliteit voor het uitvoeren van VBScipt/JScript en het berekenen van formules.
Je plaatst de ScriptControl op een form en dan kan je er de Eval functie van aanroepen met een formule.
Waneer zo'n control met de naam ScriptControl1 op je form staat kun je volgende code gebruiken
Visual Basic .NET:
1
MsgBox ScriptControl1.Eval("1 + 1")

Dit geeft dan netjes 2 als resultaat.
Hartelijk dank, net wat ik zocht
Pagina: 1