数式表示関数

以前に MOUG の回答で作ったユーザー定義関数です。
一言で言うと、数式の中身を見るための関数です。
 
例えば、セルA1 に数式が入っているとします。
そのときに、この関数を使って =FormulaValue(A1) とすると、セルの参照先を見て数式で使っている値を表示した数式を返します。

Function FormulaValue(ArgCell As Range) As Variant
  Dim wkF As String
  Dim aryD As Variant
  Dim i As Variant
  Dim V As Variant
  Dim j As Long
  Dim Num As Variant

  aryD = Array("=", "<", ">", "(", ")", "+", "-", "*", "/", "^", "&", " ")
  wkF = ArgCell.Formula
  For Each i In aryD
    wkF = Replace(wkF, i, vbTab & i & vbTab)
  Next i

  V = Split(wkF, vbTab)
  For j = LBound(V) To UBound(V)
    If Not IsNumeric(V(j)) Then
      Num = Application.Evaluate(V(j))
      If Not IsError(Num) Then
        V(j) = Num
      End If
    End If
  Next j

    FormulaValue = Replace(Join(V, vbTab), vbTab, "")
End Function

あまり完成度の高くないコードなので、数式次第では期待した結果を返さない場合があります。
例えば、数式内に文字列があり、それがセルアドレスとaryDで使っている区切りで構成される場合などがそうです。