我需要能够从大量单元格中提取特定的硬编码参数值到新单元格中。
假设某个单元格具有以下形式
=func("value1","value2","value3")
我想将value2提取到自己的单元格中,所有值都是可变长度。
我已经能够通过将以下内容添加到我的名字管理员
来检索公式作为文本=GET.CELL(6,INDIRECT("RC[-2]",FALSE))
但这并没有真正帮助,因为值变量意味着字符串长度在函数值上变化很大。
答案 0 :(得分:1)
我找不到关于GET.CELL
的任何官方信息,因此我认为它是用户定义的函数。
这意味着vba已被使用。因此,我的目的是一个新的UDF:
Function FuncArg(ByVal r As Range, ByVal n As Long)
Dim a As String
a = Split(r.Resize(1, 1).Formula, "(", 2)(1)
a = Split(a, ")")(0)
a = Split(a, ",")(n - 1)
FuncArg = Application.Evaluate(a)
End Function
所以在Excel中你可以使用公式=FuncArg(A1, 2)
在单元格A1
中返回函数的第二个参数。
注意,此功能必须在非常受控的情况下使用:
Application.Evaluate
会使其非常不安全; ,
或)
。