• 締切済み

Excel 計算式を別シートで計算表示させる

所定のSheetにある数値を別SheetにてVLOOKUP等で数値表示させる事はできます。 Sheet1のセルにある計算式をSheet2のセルより数値ではなくSheet1計算式を使って計算して数値表示させたい。 よろしくお願いします。 Sheet1 A B C D 2 3 5 10 D1に=A1+B1+C1の計算式 Sheet1 A B C D 1 2 5 8 D1にSheet1=A1+B1+C1の計算式を使って表示

みんなの回答

  • pauNed
  • ベストアンサー率74% (129/173)
回答No.2

こんにちは。 いずれにしてもマクロになるでしょう。 ■4.0マクロ関数で 1)Sheet2のD1選択して[Ctrl]キー+[F3]キー同時押し。 2)[名前の定義]ウィンドウに 名前:  siki 参照範囲:  =EVALUATE(GET.CELL(6,Sheet1!D1))+0*NOW() 3)Sheet2のD1セルに =siki ■VBAユーザー定義関数で 1)シートタブを右クリック[コードの表示]。(VisualBasicEditor(VBE)が起動) 2)VBE画面で[Alt]キー → [i]キー → [m]キー の順押し。  標準モジュールが挿入され、マウスカーソルが無地シートのようなものにフォーカス。 3)下記をコピーペースト。 '----- Function tariki(r As Range)   Application.Volatile   tariki = Evaluate(r.Formula) End Function '----- 4)Excelに戻ってSheet2のD1セルに =tariki(Sheet1!D1) あまり深く検証していないので、Sheet1のD1の数式によっては期待結果が得られないかも。 #ご質問の背景が見えないので #「単純に式がはいったSheet1のD1をコピーしてSheet2のD1に貼り付けとは違う?」 #と思ってしまいますが。

gyauc
質問者

お礼

有難うございました参考にさせていただきます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

質問文章からは、主旨が良く伝わらないのですが 私がこのコーナーの別質問の回答で、再々繰り返しているところの、 「関数式は(関数式を入れるセル以外の)セルの値(ここがポイント!)を参照し、計算等の処理をしますが、(自)他のセルの書式・数式を関数で取得できない」という表計算関数の根本原則が判っていない質問ではないですか。 ーー VBAでは、ユーザー定義関数で Function fm(a) fm = a.Formula End Function で式文字列(多分文字列)を取れるが 数式にふさわしい文字列式でも、その文字列式を数式として、計算してくれる仕掛けは、VBAで作らないと無いし、エクセルシステムと同じ計算の仕組みをつくることであり、大変複雑で一般には不可能。

gyauc
質問者

お礼

有難うございました参考にさせていただきます。

関連するQ&A

専門家に質問してみよう