数式を表示するには?

Question 2.2 Previous Next
lotusでは表示形式に式表示があるが、excelで同様の表示ができない。マクロで処理しようとしたが、作れない。なるべく簡単に作れないでしょうか?
   例   A1セル表示 (3+2)*5+10
        B1セル表示 40
Answer   Copyright (C) 1998.3.22 (updated 1999.7.1) 永井善王
Lotusの式表示がどのようなものか私は知りませんが、私が以前に使っていた表計算ソフトの式表示は、一定のコマンド操作をすると、値の表示と式の表示が交互に切り替えられるし、式印刷を指示すると式のリストを作ることができました。 エクセルでは、数式とその値の表示を切り替えるには、Ctrl キーを押しながら ` (アクセント符号) キーを押します。

あなたからの例示を次のとおり解釈した場合の、マクロの記入方法を書いておきます。
A1セルに =(3+2)*5+10 と入っている式をA2セルに文字表示し、B1セルに =40 と入っている式をB2セルに文字表示する。
          Range("A2").Value = "'" + Range("A1").FormulaR1C1
          Range("B2").Value = "'" + Range("B1").FormulaR1C1
A1セルに一般的な計算式(例、=B1+B2)が入っている場合でも、この書き方で、A2セルに式が表示されますが、R1C1形式になるので少々、見にくいかも知れません。
A1形式で表示したければ、FormulaR1C1の部分を Formulaに変えてください。

なお、汎用ソフトとして「
おまかせ数式印刷」を掲載してあります。 ダウンロードも可能です。

 

Excel VBA Macro