在VBA中,Evaluate()
和[]
方法都可以用于返回数组:如何评价数组公式与评估方法
Dim i As Variant
i = Evaluate("{1,2;3,4}")
i = [{1,2;3,4}]
两条线设置i
是含有数字1-4的2D阵列。一个附加功能是,Evaluate(...)(1,2)
返回数组的R1C2索引元素(即2 - [...](1,2)
同时错误)
我想知道是否有用于以相同的方式评价的阵列返回工作表功能的任何语法,例如
i = Evaluate("LEN(A1:A5)>3") 'or similar like [{LEN(A1:A5)>3}]
它应该会返回一维数组一样{False,False,False,True,True}
如果我有文字超过3个字符在A4
& A5
,但事实并非如此。
如果没有,是否还有另一种评估数组公式的方法来返回完整数组?我正在寻找能够提供最小字符数的方法。
'I =评估( “ROW(A1:A5)> 3”) ' – SJR
@SJR,奇怪的是,这工作,但'我=评估(“LEN(A1:A5)> 2”)'不。我希望能够返回一个数组,但它只返回一个布尔值,是否存在我忽略的一些模糊性? – Greedo
确实很奇怪。我不确定为什么,但某些功能需要被“强制”以正确的方式工作,例如这工作'我=评估(“IF(行(A1:A5),LEN(A1:A5)> 2)”)' – SJR