Excel,基于参考单元自动更新IF语句中的变量?

时间:2014-08-20 19:00:31

标签: excel vba excel-vba

我有一张需要每月更新的工作表,其中包含需要随月份变化的公式。

这是公式:=IF($S3=AI$1,[@July],0)

检查是为了确保我的值进入正确的类别。确定类别后,我需要通过引用表格中的月份列来获取月份值。

问题:当我在某个地方更改月份时,有没有办法实现这一点,我可以让公式基本上移过一列来获取新月份的值?

注意:我也有类似的情况,而不是逐字地取月份值,而是将月份的值汇总到月份。

1 个答案:

答案 0 :(得分:0)

所以我假设你有一个列名为1月到12月的表。

您可以通过至少两种方式执行此操作(我假设您的月份编号位于单元格A1中)

明确:(如果这些列不按顺序排列或与另一列不相邻)

=CHOOSE(A1,[@January],[@February], ... ,[@December])

隐含:(如果这几个月彼此相邻:

=INDEX(TableName[@[January]:[December]],A1)

显然,如果适用的话,我建议使用第二个选项。

如果你想从januar到当月的总和,你可以使用这个鲜为人知的技巧/语法:

=SUM([@January]:INDEX(TableName[@[January]:[December]],A1))