Excel の数式の一部を抽出することは可能ですか?

Excel の数式の一部を抽出することは可能ですか?

抽出できるかどうか疑問に思っていました一部Microsoft Excel または Google スプレッドシートの数式です。ワークシートはすでに入力されているため、2 つの別々のセルで数式を開始するのは現実的ではないため、この質問をします。

たとえば、数式 がある場合=(1-7)-(1-4)、別のセルの部分を抽出して評価する方法はありますか(1-7)? 正規表現によるソリューションが望ましいですが、固定文字数のソリューションでも問題ありません。

答え1

EVALUATE()この関数は、VBA を必要とせず、主流の Excel で直接使用できます。

名前付き範囲の数式でこれを使用します。次に、セル内の数式を使用します=horse(範囲に「horse」という名前を付けた場合... もちろん... (申し訳ありませんが、これを使用するまでしばらく待っていましたが、おそらく誰も理解しないでしょう...))

必要な数式を作成し、その中で絶対参照を使用するかどうかを慎重に検討してください。数式を記述したら、クリップボードにコピーします。名前付き範囲作成ツールに移動して名前付き範囲を作成し、「=EVALUATE(」と入力して数式を貼り付け、閉じ括弧を入力します。

次に、「=Named Range」と入力するだけで、質問で希望どおりに動作するようになります。

完全な絶対参照 ("$R$C") は、ソースが常に同じセルである場合に適しています。それ以外の場合は、部分参照と非絶対参照が必要です。ただし、ソースを使用するのと同じ方法でソースに相対的なセルを選択する必要があるため、作成が困難です。たとえば、ソースが A1 で、結果を D9 に表示したい場合は、D9 を選択し、数式を記述するときに必ず A1 を参照します。

関連情報