こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

-広告-

解決済みの質問

Excel2013の関数をVBAで再現

お世話になります。
当方Excelの2013を使用しており、ファイル内で「FORMULATEXT関数」を使用しております。
しかしながら、「FORMULATEXT関数」はExcel2013で追加された関数で、仕事相手がExcel2010を使っているため、先方にデータを送ると正しく計算ができず困っています。

そこで、Excel2010でVBAを使って「FORMULATEXT関数」を再現することはできないでしょうか?
FORMULATEXT関数は数式を文字列で返す関数のため、同じことができる方法があれば、ご教示いただきたいです。

よろしくお願いいたします。

投稿日時 - 2015-10-06 13:25:07

QNo.9059534

すぐに回答ほしいです

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

標準モジュールに
Function FORMULA_T(f As Range)

FORMULA_T = f.Formula

End Function

としておいて

利用方法は
=FORMULA_T(B1)
でいかがでしょう。

投稿日時 - 2015-10-06 14:01:39

お礼

回答ありがとうございます!
できました!こんなシンプルだったんですね・・・(;・∀・)

大変助かりました、ありがとうございました!

投稿日時 - 2015-10-06 15:34:20

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(2)

ANo.2

2007使用です。その関数は当然使用出来ませんが無くても問題ないと思いますが。
どのような使用の仕方をしてるのでしょうか、VBAに頼らなくても別の関数で対処可能だと思いますが。

VBAでは、Range("A1").FormulaでA1の数式は取得可能ですが。
そのまま他のセルに入れると数式が有効になるので数式の結果が表示されます。
セルに数式のみテキスト表示させたいのであれば、シングルクオーテーションを入れるとテキスト表示になります。

range("B1").value="'" & Range("A1").Formula

投稿日時 - 2015-10-06 14:28:06

-広告-
-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-