将Excel中的IF公式与可变范围相结合

时间:2020-02-13 16:36:49

标签: excel vba range

我是这里的初学者。我正在寻找将公式本质上放在单独的列中,并将另一列中的指标纳入公式的方法。由于每个月的数据长为4000行,因此该公式的范围会逐月变化。

Excel中的公式如下所示,我想使用可变范围将其复制到VBA中。

=IF(H15>=PERCENTILE($H$15:$H$628604, 0.95), H15, 0)

我想到了这个

Range(NewRangeU).Formula = "IF(" + NewRange2 + ")" >=(PERCENTILE(" + NewRangeU + ", 0.95)"

我基本上不知道如何在VBA中结合这两个公式。

NewRangeU = M4624:M9209
NewRange2 = M4624

因此该列中每个单元格的公式应为:

=IF(M4624>=PERCENTILE($M$4624:$M$9209, 0.95), M4624, 0)

=IF(M4625>=PERCENTILE($M$4624:$M$9209, 0.95), M4625, 0)

 =IF(M4626>=PERCENTILE($M$4624:$M$9209, 0.95), M4626, 0)

以此类推。

我知道如何在VBA中添加变量范围,我不知道如何将变量范围与包含条件的多个公式结合在一起。我无法从搜索中找到此答案。主持人对我的原始帖子的建议对这个问题没有帮助。

以下建议不起作用。

Range(NewRangeU).Formula = "=IF(" & NewRange2.Address(False, False) & ")">=(PERCENTILE(" & NewRangeU.Address(False, False) & ", 0.95)"

我也尝试过将它们组合成一个也不起作用的字符串。

String1 = "=IF(" + NewRange2 + ">="
String2 = "PERCENTILE(" + NewRangeU + ", 0.95)"
String3 = String1 & String2
'Range(NewRangeU).Formula = String3

0 个答案:

没有答案