• ベストアンサー

EXCELの関数について

いつも大変お世話になっております。 今回はEXCELの関数についてご存知の方いらっしゃいましたら、ご教授頂けたらと思います。 添付の画像を見て頂けたらと思いますが、 A列に計算の元となる数字を入力し、 2行目に計算したい計算式を入れると、 その結果を自動的に算出するようにしたいのですが、 緑色のセル(B3~D5)を再現してくれる関数はあるでしょうか? 仕様:Excel2013 どうぞよろしくお願い致します。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

No.4です。 たびたびごめんなさい。 数式を入れるセルが違っていましたね。 やり方は同じですが、C3セルに =IF($A3="","",計算($A3,C$2)) という数式になります。 どうも失礼しました。m(_ _)m

yadopla
質問者

お礼

ご回答頂きましてありがとうございました。 確かに表現したい内容かと思います。 少しVBAを触らなければいけない点を除いて ほぼ要望通りの内容になっております。 ご回答頂きましてありがとうございました!

その他の回答 (6)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.7

アナタの意図する「関数」が、常に「A3とかから始まる単純な算式」に限るという限定条件なら、確かに名前定義だけでもできます。 合理的な手順: ご相談で掲示された画像の通りに表を作成する C3セルを選ぶ(←必ず行う) 名前の定義で  名前 calc  参照範囲 =EVALUATE(!$A3&!C$2) と登録する 各セルに =calc と記入する。 言わずもがなで繰り返しになりますが、このやり方は =A3*20 とか =A3*15+2000 のように「=A3」から始まる算式でしか通用しません。 何かちょっとでも複雑な「関数」とか使わなきゃならない時は、回答したようにテーブルの機能を利用して「具体的にどんな数式を計算したいのか」を実際の数式として設定します。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

>計算列が増えると設定が手間になるというデメリットもありますが、 計算対象列が連続している場合は纏めて名前の定義ができます。 calc=EVALUATE(Sheet1!$A:$A&Sheet1!$C$2:$F$2) 貼付画像はA列とC2~F2の関係で計算可能です。 但し、加算の場合は*1+100のようにするかセルの書式を文字列にする必要があります。

yadopla
質問者

お礼

回答ありがとうございます。 纏めて範囲指定できるのであれば、しっかり型を作ればずっと使えそうな気がします。 少し書式を触らなければいけないのは残念ですが、それを差し引いても やりたいことが表現できており助かります!ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんにちは! 簡単なユーザー定義関数を作ってみてはどうでしょうか? Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに ↓の3行をコピー&ペースト → Excel画面に戻り Function 計算(元 As String, 式 As String) 計算 = Evaluate(元 & 式) End Function C2セルに =IF($A2="","",計算($A2,C$1)) という数式を入れフィルハンドルで列・行方向にフィルハンドルでコピーしてみてください。 ※ ファイルを保存する場合は「マクロ有効ブック」で保存します。m(_ _)m

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

>A列に計算の元となる数字を入力し、 >2行目に計算したい計算式を入れると、 >その結果を自動的に算出するようにしたい ご相談の文字通りのことは、データタブのWhat-If分析▼の中にある「データテーブル」という機能を利用して行う事ができます。 手順: A3以下に計算したい数字を記入する B2セルに =A2*20 と数式を記入する C2セルに =A2*50+2000 のように数式を記入する A2:C5を選択する データテーブルを開始する 「列の代入セル」にA2セルを設定してOKする 空欄に自動で計算結果が現れる B2やC2の数式を変更すると、その下の計算結果が一斉に更新される。 新しいエクセルを用意、回答の通りに実際に手を動かしてください。

yadopla
質問者

お礼

回答ありがとうございます。 確かに表現したいことが表示されております。 実際に表現したいことはできましたが、 数式に「A2」と打ち込んでしまうのが少し残念です。。。 できれば「A2」と入れなくてもいいようにできれば、 かなりありがたいところですが、このような方法があるのは目からうろこでした! ご回答頂きましてありがとうございました!

  • ryo_ky
  • ベストアンサー率47% (112/237)
回答No.2

添付図のC2、D2の関数の内容が四則演算を含めて変更する事があるのならば,EVALUATEを使った方が良いです.方法は名前の管理を使用します. C列の方法 名前の管理で新規作成し,名前をcalc1,参照を=EVALUATE(A3&$C$2) とします. C3のセルに =calc1 と入力すればA3*C2の結果が表示されます.もちろんそのまま下方向にコピーで対応可です. D列の方法も同様で 名前の管理で新規作成し,名前をcalc2,参照を=EVALUATE(A3&$D$2) とすれば,計算できます.

yadopla
質問者

お礼

回答ありがとうございます。 計算列が増えると設定が手間になるというデメリットもありますが、 再現したいことはできたので、助かりました! ありがとうございました!

  • bajutsu
  • ベストアンサー率20% (139/693)
回答No.1

C3 =A3*20 D3 =A3*15+2000 あとは下にコピペ

yadopla
質問者

お礼

回答ありがとうございます。 その数式にしてしまうと、2列目の関数を変更したときに 全てやり直し作業が発生してしまうので、それを避けてやりたいと思っております。

関連するQ&A