文字列を数式にするには?

解決


駆け出しぷろぐらま  2002-09-05 11:07:54  No: 76092

テキストボックスに、以下のような数式を入れたときに
その数式で実際に計算して、結果を返すようなプログラムを作りたいのですが
「文字列→数式」になるような関数ってないでしょうか?
(ちなみに変数部分の数値は別途、テキストボックスなどで入手します。)

変数0*3.14
変数1−変数2
273-変数3
(変数4+変数5)*2-変数6


Say  2002-09-05 17:32:00  No: 76093

1年ほど前に似たような質問に回答した記憶が…。
過去ログ去年の10月「スクリプト」で
検索してみてください。


VBレスキュ−(花ちゃん)  URL  2002-09-05 19:04:19  No: 76094

文字列式を計算するなら

Private Sub Command1_Click()
    Dim Sc As Object
    Set Sc = CreateObject("ScriptControl")
    Sc.Language = "VBScript"
    Text1.Text = Sc.Eval("((10+20)*2)\2+30+20-50")  '=30
    Set Sc = Nothing
End Sub

プロジェクト→コンポーネント→Microsoft Script Control 1.0 にチェックを
入れて ScriptControl をフォームに貼り付けて下さい。
見つからなければ VB6.0 のCDからインストールして下さい。


駆け出しぷろぐらま  2002-09-10 19:38:29  No: 76095

回答ありがとうございました。
実際はもうちょい複雑なのですが、早速試してみます。


蜻蛉  URL  2002-09-11 03:14:29  No: 76096

入力した文字列を直接計算したいのならそういうクラスがあります。

http://www.biwa.ne.jp/~y-koyama/soft/DCM.html

これです。改造すれば数式も出力できます。


駆け出しぷろぐらま  2002-09-23 07:26:45  No: 76097

蜻蛉さんに教えていただいたクラスをヒントにして、
無事に解決できました。
有難うございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加