我在Excel 2007中使用以下公式可以很好地处理大范围的数据。
在所有情况下,Range1,Range2和ArrayRange都是相同的起始行和结束行。
工作:
=PERCENTILE(IF(((Range1=Value)*(Range2=Value2)),ArrayRange),0.9)
当我在宏中更新公式时,我似乎无法找出使用VBA制定上述公式的正确方法。
任何人都可以提供以下帮助吗?
不工作:
90thPercentile = Application.Percentile(((Range1 = Value) * (Range2 = Value2), ArrayRange), 0.9)
90thPercentile = Application.Percentile(If(Range1 = Value,IF(Range2 = Value2, ArrayRange))), 0.9)
非常感谢
NIK
答案 0 :(得分:1)
你不能在VBA中使用这样的数组。您必须使用Evaluate并传递公式字符串:
90thPercentile = activesheet.evaluate("PERCENTILE(IF(((Range1=Value)*(Range2=Value2)),ArrayRange),0.9)"