- ベストアンサー
Excel2013の関数をVBAで再現
お世話になります。 当方Excelの2013を使用しており、ファイル内で「FORMULATEXT関数」を使用しております。 しかしながら、「FORMULATEXT関数」はExcel2013で追加された関数で、仕事相手がExcel2010を使っているため、先方にデータを送ると正しく計算ができず困っています。 そこで、Excel2010でVBAを使って「FORMULATEXT関数」を再現することはできないでしょうか? FORMULATEXT関数は数式を文字列で返す関数のため、同じことができる方法があれば、ご教示いただきたいです。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
標準モジュールに Function FORMULA_T(f As Range) FORMULA_T = f.Formula End Function としておいて 利用方法は =FORMULA_T(B1) でいかがでしょう。
その他の回答 (1)
- dogs_cats
- ベストアンサー率38% (278/717)
回答No.2
2007使用です。その関数は当然使用出来ませんが無くても問題ないと思いますが。 どのような使用の仕方をしてるのでしょうか、VBAに頼らなくても別の関数で対処可能だと思いますが。 VBAでは、Range("A1").FormulaでA1の数式は取得可能ですが。 そのまま他のセルに入れると数式が有効になるので数式の結果が表示されます。 セルに数式のみテキスト表示させたいのであれば、シングルクオーテーションを入れるとテキスト表示になります。 range("B1").value="'" & Range("A1").Formula
お礼
回答ありがとうございます! できました!こんなシンプルだったんですね・・・(;・∀・) 大変助かりました、ありがとうございました!