- ベストアンサー
エクセルで計算式の答えを
A1で計算した答えをB1に出したいのですが、どのようにすればよろしいですか? 今までは、A1計算式のセルをコピーしてB1に貼り付けて計算式のあたまに=をつけていたのですが、 もっといい方法があったら教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 ここのカテゴリを一度検索していただければ、同様の方法はあったはずです。 A1 に式を入れて、B1 に出す場合は、カーソルをB1 においてから、 メニュー[挿入]-[名前]-[定義]で、 名前 :KEISAN 参照範囲:=EVALUATE("="&!A1)+NOW()*0 B1 に、=KEISAN と入れると出てきます。 ただし、Ver.4 マクロ関数を使っているので、Excel 2002 以上では、そのままの状態ですと、開くときに、メッセージが出ることもあります。それを出したくない場合は、レジストリで調整しなくてはなりません。そのほかでは、VBAのユーザー定義関数で同じように作る方法もあります。 '----------------------------------------- VBAの方法 ※標準モジュールへの取り付け方: Alt + F11 (Altを押しながらF11)を押すと、Visual Basic Editor 画面が出てきます。 次に、メニューの[挿入]-[標準モジュール]と開けて、クリックすると、画面が現れますので、以下のコードを貼り付けて、 Alt + Q で、画面を閉じます。 Public Function myEvaluate(ByVal mFormula As String) Dim buf As Variant buf = Application.Evaluate(mFormula) If IsError(buf) Then myEvaluate = CVErr(buf) Else myEvaluate = buf End If End Function セルに、 =myEvaluate(A1) とすると出てきます。なお、KEISANもmyEvaluate も、任意の名前ですから、自分の好きな名前に、変えても可能です。
その他の回答 (3)
- koko88okok
- ベストアンサー率58% (3839/6543)
計算式が分かりませんが、仮に、計算式が「10+25=」の場合、 A1セルの表示形式を「#0"+"」、B1セルの表示形式を「#0"="」として、C1に通常の計算式「=A1+B1」や「SUM(A1:B1)」を入力する方法は如何でしょう?
- mshr1962
- ベストアンサー率39% (7417/18945)
A1をコピーして、B1で「編集」「形式を選択して貼り付け」で「リンク貼り付け」を選ぶ。 ただしA1が空白の時にB1を空白にするなら =IF(A1="","",B1) のように入力する。 ※A1に表示形式を設定している場合は、コピーして「形式を選択して貼り付け」で「書式」を選ぶ。
- s___o
- ベストアンサー率35% (108/306)
B1のセルに 「=A1」 とすれば、A1のセルの値(計算結果)が出力されます。
お礼
できました! ありがとうございます。