Formel in einem Textfeld berechnen lassen

Hallo ich bins wieder mal
Ich habe folgendes Problem:

Ich habe 3 Textfelder:

Im ersten steht eine Formel nichts großes z.B. (x-1)*(x+1)

In Textfeld 3 steht jetzt eine Zahl durch die das x in der Formel ersetzt wird
das klappt ja schon

jetzt steht die Formel mit dem ersetzen X z.B. (2-1)*(2+1) in Textfeld 1
jetzt kommt das Problem die Formel soll berechnet werden und dann in Textfeld 3 ausgegeben werden wie kann ich das machen?

Schon im Vorraus danke für die Bemühungen

Hallo,

dafür gibt es Eval.

Ergebnis = Eval(Formel)

Gruß Rainer

Das Funktioniert leider nicht ist das für vb6 gedacht oder ist das .net?

Hi,

Das Funktioniert leider nicht ist das für vb6 gedacht oder ist
das .net?

Die Funktion ist sowohl in Access als auch im ‚Microsoft Script Control 1.0‘ enthalten.

In VB6 muss ich auf eins von beiden einen Verweis setzen, dann ist es verfügbar.

Gruß Rainer

Das Funktioniert leider nicht ist das für vb6 gedacht oder ist
das .net?

Hallo Magifix,

andersrum, welches Programm liegt denn bei dir vor?

Gruß
Reinhard

Was ist mit „einen Verweis setzen“ gemeint?

Was ist mit „einen Verweis setzen“ gemeint?

Hallo Magifix,

im VB-Editor findest du das bei Vb5.0 unter Projekt–Verweise, in Excel-Vba unter Extras–Verweise.

Übrigens, ich hatte dich etwas gefragt.

Gruß
Reinhard

Oh ja VB6

Das Funktioniert leider nicht ist das für vb6 gedacht oder ist
das .net?

Die Funktion ist sowohl in Access als auch im ‚Microsoft
Script Control 1.0‘ enthalten.

In VB6 muss ich auf eins von beiden einen Verweis setzen, dann
ist es verfügbar.

Hallo Rainer,

ich habe es grad eben mal getestet mit VB5.0.
Der Verweis auf „Microsoft Script Control 1.0“ bringt nix.
Aber mit dem Verweis auf „Microsoft Access…“ klappt dieser Code:

Private Sub Form_Load()
MsgBox eval(„2*3“)
End Sub

Gruß
Reinhard

Hallo reinhard,

Der Verweis auf „Microsoft Script Control 1.0“ bringt nix.

ich bin faul und will es nur einmal schreiben… :smile:

Siehe unten.

Gruß Rainer

Oh ja VB6

ach so! Ich dachte die ganze Zeit VBA!

In VB6. ‚Projekt‘ -> ‚Verweise…‘

Dort ‚Microsoft Script Control 1.0‘ aktivieren.
Dann in ‚Projekt Komponenten‘ das Scriptkontrol auch aktivieren, dann hast Du ein neues Steuerelement in der Werkzeugleiste.
Das legst Du auf die Form, heißt dann ‚Scriptcontrol1‘. Noch ein Button auf die Form, dann läuft folgender Code:

Option Explicit

Private Sub Command1\_Click()
 Command1.Caption = ScriptControl1.Eval("1 + 1")
End Sub

OK?

Gruß Rainer

Hallo Reinhard,

eine Kleinigkeit noch.

Aber mit dem Verweis auf „Microsoft Access…“ klappt dieser
Code:

Private Sub Form_Load()
MsgBox eval(„2*3“)
End Sub

Ja, aber Access ist nicht so verbreitet, hat nicht Jeder installiert. Das ist dabei aber Bedingung.

Gruß Rainer

Vielen vielen Dank auf dich kann man sich verlassen!
Immer ne Lösung parat.

aber eine frage hätte ich da noch kann der Befehl auch Hochzahlen? ²³…

aber eine frage hätte ich da noch kann der Befehl auch
Hochzahlen? ²³…

Klar „2^3“

Und das „^“ dient als Erkennungszeichen das es eine Potenz ist?

ja, ragt doch steil genug nach oben :smile:)

Gruß
Reinhard

Hi,

Und das „^“ dient als Erkennungszeichen das es eine Potenz
ist?

Ja. Das hättest Du schneller ausprobiren können, als die Frage zu tippen. :smile:

Gruß Rainer

xD

Danke