3
私はVBAでカスタム評価関数を使用しています。しかし、)(別の評価が含まれている式を評価すると、失敗した:評価の範囲内のExcel評価
=Eval(I21)
セルI21:(式自体の動作)注:INDIRECT()doesntのワークすぎる
'=MATCH("SOME TEXT",eval($I$22),0)
セルI22:(位置参照)
''1516Activity'!$C:$C
VBA:
Function Eval(Ref As String)
Application.Volatile
Eval = Application.ThisCell.Parent.Evaluate(Ref)
End Function
私はあなたが削除する必要があります "="セルI21(数式)。再帰(eval in eval)では、独自のパーサーを記述する必要があります。 – Gerfried
@Gerfried Mindはそれを詳しく説明していますか?ありがとう! –
'Eval = Application.Evaluate(Ref)'を使うとうまくいくはずですが、完全修飾範囲アドレスを渡す必要があります。 – Rory