【问题标题】:Excel, maximum value based on date rangeExcel,基于日期范围的最大值
【发布时间】:2017-09-10 15:43:48
【问题描述】:

我有一个包含两列的 Excel 电子表格,第一列包含日期,第二列包含值。日期跨越数年。我想写一个函数来检索每年的最大值。

例如,在以下数据集中: 2009 年 6 月 3 日 3 2009 年 6 月 5 日 5 2010 年 1 月 1 日 7 2010 年 7 月 7 日 1 2013 年 4 月 1 日 12 2013 年 5 月 2 日 77

2009 年的函数将返回值 3 2010 年的函数将返回值 7 2013 年的函数将返回值 77

所有日期都在 A 列中 所有值都在 E 列中 在 J 列中,我列出了所需年份,即 J1 = 2009、J2 = 2010、J3 = 2011 等。

每年的函数位于与J列中的年份对应的K列中,即2009年的最大值在单元格K1中,2010年的最大值在单元格K2中,等等。

我相信这个函数应该类似于: =MAX(某种类型的函数,可以给我每年的日期范围)

感谢大家的帮助

【问题讨论】:

    标签: excel date


    【解决方案1】:

    您可以使用:
    =MAX(IF(YEAR($A$2:$A$9)=J1,$E$2:$E$9,0))
    数组公式同时按Ctrl+Shift+Enter
    你可以拖动它
    $A$2:$A$9 绝对引用的 Date $ 列将其更改为您的最后一行
    $E$2:$E$9 值列将其更改为您的最后一行
    J1 新列中的第一个日期它会在拖动时自动更改
    if 会将 Date 的年份测试到 J1 并返回相应的 Value

    【讨论】:

      【解决方案2】:

      让我们考虑这个例子:

      +---+------------+------+-------+-------------+
      |   |     A      |  B   |   C   |      D      |
      +---+------------+------+-------+-------------+
      | 1 | Date       | Year | Value | Max of year |
      | 2 | 03/06/2009 | 2009 | 3     | 5           |
      | 3 | 05/06/2009 | 2009 | 5     | 5           |
      | 4 | 01/01/2010 | 2010 | 7     | 7           |
      | 5 | 07/07/2010 | 2010 | 1     | 7           |
      | 6 | 01/04/2013 | 2013 | 12    | 77          |
      | 7 | 02/05/2013 | 2013 | 77    | 77          |
      +---+------------+------+-------+-------------+
      

      你有两个选择。

      第一种解决方案(最简单)

      添加一个名为 YEAR 的列,用于计算 A 列的每个单元格的年份。然后构建一个包含 C 列最大值的数据透视表。

      第二个解决方案(最难)

      使用矩阵函数。添加计算年份的 B 列。然后在单元格 D2 中写入以下内容:=MAX(IF(B:B=B2,C:C)) 并按 CTRL + SHIFT + ENTER。 该公式将像 ={=MAX(SE(B:B=B7;C:C))} 一样被转换(转换为矩阵函数)。现在您可以将单元格 D2 拖到列的末尾(示例中为 D7)。 您还可以将我的第二个解决方案与@Yass 回答的 YEAR 函数结合使用。

      【讨论】:

        【解决方案3】:

        我设法自己回答了这个问题。如果我将与日期和值对应的列定义为数组,那么我可以使用以下函数:

        =MAX(IF(Transaction_Date<=DATE(J1,12,31),IF(Transaction_Date>=DATE(J1,1,1),Account_Balance)))
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多