• ベストアンサー

エクセルで、出来そうで出来ない設定なんですが。

A1に算式表示→=400*0.5 B1に答え→200 という具合にしたいのですが、どうすればいいのでしょう? A列に数式、B列に回答という意味なんですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

ユーザ関数にしました。 以下の3行をALT+F11でVBE画面を開き、「VBAProjectエクスプローラのシート名右クリック」→「挿入」→「標準モジュール」で表示される画面にペーストして下さい。 Function EVCALC(ByVal rng As Range) EVCALC = Application.Evaluate(rng.Value) End Function 画面に戻り  =EVCALC(A1) で答(200)が得られます。先頭の「=」はあってもなくても構いません ただしOffice2007では動くかどうか未確認です。

lqlqlq
質問者

補足

すみません。順番をもう少し詳しくお教えいただけますか。 一番最初に、数式をA1に入れて、お教え頂いた通りにすれば大丈夫でしょうか? > 画面に戻り =EVCALC(A1) で答(200)が得られます。 という部分がよく分からないのですが…。 すみません。素人なもので。 この方法だとA1に計算式を入れると、自動的にB1に答えが出るんでしょうか? ちょっと試してみたのですが、うまくいかなくて。すみませんが、よろしくお願い致します。

その他の回答 (2)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

>うまくいかなくて 質問者さまのパソコンは見えませんので、どう「うまくいかない」か書いていただきたかったところですが、気を取り直して書きます。 まずマクロは説明した画面に貼り付けていただけましたか? 数式を先に入れる、入れないなどの順番は関係ありません。 > 画面に戻り =EVCALC(A1) で答(200)が得られます。 は「VBE画面からシート画面に戻り、適当なセルに  =EVCALC(A1) と入力しなさいという意味です。上の式を入れれば答は自動的に出ます。 なお()内のA1はセルアドレスです。(この例はA1に文字列で数式が入力されている場合の例です)

lqlqlq
質問者

お礼

zap35さん、何度もありがとうございます。 面倒をおかけして申し訳ございませんでした。 お教え頂いたやり方で、全部出来ました。 非常に助かりました。 また何かございましたら、よろしくお願い致します。

  • kageta
  • ベストアンサー率22% (24/106)
回答No.1

A1セル:  '=400*0.5 B1セル:  =400*0.5 数式を文字列として扱うようにすれば表示できます。

lqlqlq
質問者

お礼

ありがとうございます。 質問の書き方が不十分でした。すみません。 A1に数式を書いて、自動的にB1に答えが出るようにしたいんです。 何か方法はございますか。

関連するQ&A