在Excel中使用IF语句将数组与数组进行比较

时间:2014-03-05 10:14:45

标签: excel-formula

我正在尝试使用Excel模拟投资组合重新平衡策略。

假设有10个股票,每个股票都有一个目标分配权重和一个可接受的上下波段。如果在任一方向超出频段,则强制重新平衡。每只股票的重量都不同。我现在试图想出一个if语句来比较每个股票的实际分配权重(在模拟回报之后)与其单独的上/下波段。

E3:E13是一段时间后的实际分配权重。

C3:C12是较低的可接受值

D3:D12是可接受的较高值。

我尝试使用以下公式,根据下一个术语分配所基于的"yes" (= rebalance) or "no" (= not rebalance)填充单元格:

=IF(E3:E12<$C$3:$C$12,"yes",IF(E3:E12>$D$3:$D$12,"yes","no"))

我希望这会比较E3 with C3E4 with C4等,以及E3 with D3E4 with D4等等。不幸的是,该公式没有创建正确的输出,当超出某些频段时,它通常会说“不”。我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:2)

这样的东西?您需要将单元格的值与其他2个单元格进行比较,然后您可以使用OR(如果您想要匹配)...或者您可以使用AND(如果您想匹配两个单元格) )

enter image description here

编辑:根据您的要求 - 您可以使用ArrayFormula来获取它(按 Ctrl + Shift + Enter

enter image description here