【问题标题】:Excel Formula substitute similar values into a single formulaExcel 公式将相似的值替换为单个公式
【发布时间】:2019-09-30 19:04:58
【问题描述】:

我已经设置了这个公式,对于每个单元格,它应该从我存储在数据中的内容中减去内容!$B$1,在这种情况下是 300,所以如果“时间 1”的内容是 100,这个将显示 200,然后将所有这些值从时间 1 到时间 15 相加,这也将忽略任何不是数字的值。目前我有:

=SUM(IF(ISNUMBER([@[Time 1]]),data!$B$1-[@[Time 1]], 0),IF(ISNUMBER([@[Time 2]]),data!$B$1-[@[Time 2]], 0),IF(ISNUMBER([@[Time 3]]),data!$B$1-[@[Time 3]], 0),IF(ISNUMBER([@[Time 4]]),data!$B$1-[@[Time 4]], 0),IF(ISNUMBER([@[Time 5]]),data!$B$1-[@[Time 5]], 0),IF(ISNUMBER([@[Time 6]]),data!$B$1-[@[Time 6]], 0),IF(ISNUMBER([@[Time 7]]),data!$B$1-[@[Time 7]], 0),IF(ISNUMBER([@[Time 8]]),data!$B$1-[@[Time 8]], 0),IF(ISNUMBER([@[Time 9]]),data!$B$1-[@[Time 9]], 0),IF(ISNUMBER([@[Time 10]]),data!$B$1-[@[Time 10]], 0),IF(ISNUMBER([@[Time 11]]),data!$B$1-[@[Time 11]], 0), IF(ISNUMBER([@[Time 12]]),data!$B$1-[@[Time 12]], 0),IF(ISNUMBER([@[Time 13]]),data!$B$1-[@[Time 13]], 0), IF(ISNUMBER([@[Time 14]]),data!$B$1-[@[Time 14]], 0), IF(ISNUMBER([@[Time 15]]),data!$B$1-[@[Time 15]], 0))

这基本上只是

=SUM(IF(ISNUMBER([@[Time 1]]),data!$B$1-[@[Time 1]], 0))

但每次都重复。对于实际上使用相同公式的东西来说似乎非常冗长,是否可以通过用列表替换“时间 1”来实现相同的结果?

这是当前的计算示例:

提前致谢。

【问题讨论】:

    标签: excel if-statement excel-formula sum isnumeric


    【解决方案1】:

    使用 SUM(IFERROR()) 作为数组公式:

    =SUM(IFERROR(data!$B$1-[@[Time 1]:[Time 15]],0))
    

    作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 确认,而不是 Enter。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-24
      相关资源
      最近更新 更多