2017-03-15 14 views
1

他のセルに数式があるかどうかを確認するために使用する式は何ですか?たとえば、2つの列があり、Aには数式または値のいずれかを含むセルがあります。コラムBIでExcel式 - セルに数式があるかどうかを調べる

(カラムAは、通常、式が含まれていますが、他のユーザーが直接以前あった式を入力して置き換えることによって、それらの値を変更しようとする)

場合は「HasFormulaを」と言うだろう数式を追加します列Aのセルには数式があり、値が含まれている場合は "PlainValue"と表示されます。

おそらく=ISNUMBER()を使用していると思われますが、それは正確ではない可能性があります。私はエクセル2010

+1

あなたが探しているものではありませんが、あなたは 'Ctrl' +'で遊んでいますか?これはCtrlキーと「バックティック」(小文字のチルダ)です。 – Jeeped

答えて

4

Excelを使用しています

は、実際に組み込みISFORMULA()機能を持っています。

と言ってくださいには数式があり、それを確認してください。たとえばB1では、あなたが使用することができます。

=If(ISFORMULA(A1),"HasFormula","PlainValue")

編集:あなたのコメントにつき、あなたはISFORMULA()を表示できません。別の方法として、高速のUDFを作成し、ワークシートのカスタム関数を使用する方法があります。ワークブックモジュールで

、このコードを配置:

Function isFormula(ByVal target As Range) As Boolean 
    isFormula = target.hasFormula 
End Function 

その後、あなたはこのようにそれを呼び出すことができます:=isFormula(A1)A1が式を持っている場合、それはTRUEを返します。セルが数式が含まれている場合は、あなたが直接確認することができます列A

を保護することによって、ユーザを制限することができ =IF(ISERROR(FORMULATEXT(A1)),"PlainText","HasFormula")

+0

ネット上で同様のポストを見ましたが、Excel 2010にはその組み込み式がないようです。何があっても '#NAME? 'が得られます。 – jay

+0

@jay - あなたはVBAオプションを利用できますか?私は 'ISFORMULA()'と同じことをする簡単なUDFを使って投稿を編集しました。 – BruceWayne

+1

あなたが参照している関数(例: 'ISFORMULA')はExcel 2013で導入されたことに言及することをお勧めします。' FORMULATEXT'と同じです。 – Jeeped

0

:あなたはVBAを使用できない場合

、あなたは、この数式を使用することができますショートカットCtrl + `を使用してください。でISFORMULAを使用し、このコード

Function IsFormula(cell_ref As Range) 
IsFormula = cell_ref.HasFormula 
End Function 

4.今 2.モジュールワークブック 3.貼り付けで 1. Altキーを押しながらF11:

あなたは、VBAを使用して、ユーザー定義関数を書くことができますどこでも好きな細胞。

関連する問題