概要
「このセルにどんな数式が入っているかを“文字として表示したい”」
「数式の説明資料を作りたい」
「他の人に“どんな計算をしているか”を見せたい」
こういうときに使うのが FORMULATEXT 関数です。
FORMULATEXT は、
セルに入力されている数式そのものを“文字列として表示する”
という、非常にシンプルで便利な関数です。
ここでは、初心者でもすぐ使えるテンプレートと例題を交えて、
FORMULATEXT を使った 数式の可視化テクニック を丁寧に解説します。
FORMULATEXT の基本
書式
=FORMULATEXT(参照セル)
- 参照セルに入力されている 数式そのもの を文字列として返します。
- 数式が入っていない場合は #N/A になります。
例:
A2 に
=SUM(B2:D2)
という数式が入っているとします。
B2 に次の式を書くと、
=FORMULATEXT(A2)
結果は
=SUM(B2:D2)
という“文字列”になります。
基本パターン:数式をそのまま表示する
例:A2 の数式を B2 に表示
A2 にどんな数式が入っているかを確認したいとき、B2 にこう書きます。
=FORMULATEXT(A2)
これだけで、A2 の数式がそのまま文字として表示されます。
応用1:数式の説明文を自動生成する
FORMULATEXT は「数式そのもの」を返すので、
説明文と組み合わせると“自動ドキュメント化”ができます。
例:
A2 の数式を説明文として表示したい
B2 に次の式を書きます。
="このセルの数式は:" & FORMULATEXT(A2)
結果:
このセルの数式は:=SUM(B2:D2)
資料作成やレビュー時にとても便利です。
応用2:数式の比較に使う
複数セルの数式が同じかどうかを確認したいとき、
FORMULATEXT を使うと“文字列として比較”できます。
例:A2 と A3 の数式が同じか判定
=FORMULATEXT(A2)=FORMULATEXT(A3)
結果は TRUE / FALSE になります。
- TRUE → 数式が完全一致
- FALSE → どこかが違う
監査やチェック作業で役立ちます。
応用3:数式一覧表を作る
FORMULATEXT は「数式の見える化」に最適です。
例:表の右側に“数式一覧”を作る
A列:計算セル
B列:その数式を表示する列
B2 に次の式を書き、下へコピーします。
=FORMULATEXT(A2)
これだけで、A列の数式一覧が自動生成されます。
応用4:IF と組み合わせて“数式がないときの対策”
FORMULATEXT は、参照セルに数式がないと #N/A になります。
これを避けたいときは IFERROR を使います。
例:数式がないときは空欄にする
=IFERROR(FORMULATEXT(A2),"")
- A2 に数式 → FORMULATEXT が返る
- A2 が値のみ → “”(空欄)
資料作成時に便利です。
応用5:LET と組み合わせて“読みやすい数式表示”
FORMULATEXT は LET と組み合わせると、
「数式+説明文」をきれいに整理できます。
例:A2 の数式を説明付きで表示
=LET(
f, FORMULATEXT(A2),
result, "使用している数式:" & f,
result
)
複雑な説明文を作るときに便利です。
FORMULATEXT の注意点
1. 数式が入っていないと #N/A
→ IFERROR で対策可能
2. 他ブック参照は制限あり
→ 閉じたブックの数式は取得できない場合があります
3. 数式の“結果”ではなく“式そのもの”を返す
→ 計算結果を表示したい場合は FORMULATEXT ではなく通常の参照を使う
FORMULATEXT の“型”まとめ
数式をそのまま表示
=FORMULATEXT(A2)
説明文と組み合わせ
="数式:" & FORMULATEXT(A2)
数式がないときは空欄
=IFERROR(FORMULATEXT(A2),"")
数式比較
=FORMULATEXT(A2)=FORMULATEXT(A3)
LET で整形
=LET(f,FORMULATEXT(A2),"数式:" & f)
例題
問題1
A2 に数式が入っています。
その数式を B2 に文字として表示したいです。
FORMULATEXT を使った式を書いてください。
=FORMULATEXT(A2)
問題2
A2 の数式をこのセルの数式は:◯◯
という形で表示したいです。
FORMULATEXT と文字列結合を使った式を書いてください。
="このセルの数式は:" & FORMULATEXT(A2)
問題3
A2 に数式が入っている場合はその数式を表示し、
数式が入っていない場合は空欄にしたいです。
IFERROR と FORMULATEXT を使った式を書いてください。
=IFERROR(FORMULATEXT(A2),"")
問題4
A2 と A3 の数式が同じかどうかを TRUE/FALSE で判定したいです。
FORMULATEXT を使った式を書いてください。
=FORMULATEXT(A2)=FORMULATEXT(A3)
問題5
A2 の数式を LET で変数 f に入れ、使用している数式:◯◯
という文字列を返したいです。
LET と FORMULATEXT を使った式を書いてください。
=LET(
f, FORMULATEXT(A2),
result, "使用している数式:" & f,
result
)
FORMULATEXT は「数式の見える化」に特化した、知っていると非常に便利な関数です。
資料作成・レビュー・監査・教育など、あらゆる場面で役立つので、
ぜひ“数式の可視化ツール”として使いこなしてみてください。
