数式の用語数(Microsoft Excel)
プラディープは、与えられた式の項の数を把握する必要があります。たとえば、式= 5 + 80 * 3/6には4つの項があります。彼は、数式の項の数(4)を伝えるために使用できる数式を望んでいます。
この情報を収集するためにExcelで使用できる組み込み関数はありません。したがって、最もクリーンなアプローチは、次のような独自の関数を作成することです。
Function TermsInFormula(TheCell As Range) Dim sFormula As String Dim vOps As Variant Dim iCount As Integer Dim J As Integer Dim AWF As WorksheetFunction Application.Volatile vOps = Array("+", "-", "*", "/", "^") Set AWF = Application.WorksheetFunction sFormula = TheCell.Formula iCount = 1 For J = LBound(vOps) To UBound(vOps) iCount = iCount + Len(sFormula) _ - Len(AWF.Substitute(sFormula, vOps(J), "")) Next TermsInFormula = iCount Set AWF = Nothing End Function
この関数は、参照されているセルの数式をチェックして、5つの数学演算子のうちのいくつが含まれているかを確認します。各項は演算子で区切られているため、数式の項の数は常に演算子の数より1つ多くなります。
この関数を使用するには、セルA1の数式に含まれる用語の数を知りたいと仮定して、セルに次の数式を入力します。
=TermsInFormula(A1)
この関数は、数式、数値、および数式のように見えるテキストで機能します。ただし、日付の表示は関数が検査するFormulaプロパティの一部ではないため、日付の「/」は演算子とは見なされません。 (日付の表示は、Formulaプロパティではなく、TextまたはValueプロパティの一部です。)
先ほど、数式の項の数は一般に演算子の数より1つ多いと述べました。すべての式がそれほど単純ではないため、ここでの有効な単語は「一般的に」です。使用している数式の種類を視覚的に調べて、期待する結果が得られていることを確認する必要があります。
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(3265)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。
link数式内の用語の数。