【问题标题】:Return value based on most recent "completed year"?基于最近的“完成年份”的返回值?
【发布时间】:2019-01-14 15:47:21
【问题描述】:

我有列出学期年份(“A”、“B”、“C”、...)和一些数据的数据。

学期年是一个完整的日历年,包括所有 12 个月。

我正在尝试使用公式确定最近的完整学期。 (如果可能,不要使用 UDF)。

示例数据:

Term    Month      Year  Misc. Data
A      January     2017  32
A      February    2017  35
A      March       2017  448
A      April       2017  747
A      May         2017  656
A      June        2017  370
A      June        2017  1892
A      July        2017  373
A      August      2017  387
A      August      2017  3
A      August      2017  32992
A      September   2017  815
A      October     2017  479
A      November    2017  753
A      December    2017  413
B      August      2018  544
B      September   2018  541
B      October     2018  435
B      November    2018  17
B      December    2018  270
B      January     2018  309
B      February    2018  488

(编辑:添加数据,每月会有多个条目。)

所以,由于学期 A 是从今天(即 2019 年)开始的最近的所有月份,我只想让公式返回 A

至于我目前的尝试,我想不出如何使用Index/Match 公式。我“害怕”我需要一个 UDF,或者至少需要某种类型的帮助列。到目前为止,我只得到了=Index(A2:A20,但想不出如何从那里构建它。我有一种预感,可能需要Aggregate(),但我不知道怎么做。

【问题讨论】:

  • 月份列是字符串还是日期值的自定义格式? - 您是否希望通过单个公式来处理这个问题,或者我们可以敲出一个命名范围/月份名称表(或者Month 结果的唯一数量就足够了)
  • @Glitch_Doctor - 条款都是字符串。月份列也是一个字符串,但如果有帮助,我们可以更改。一个单一的公式会很好,但不是必需的。我可以使用辅助表,但如果解决方案是三个公式、查找表等的组合,那么我可能会选择 UDF。

标签: excel excel-formula


【解决方案1】:

IF您每个月只有一个条目,并且IF年份按您显示的升序排序,然后尝试:

=LOOKUP(2,1/(COUNTIFS(Table1[Year],Table1[Year])=12),Table1[[#All],[Term]])

【讨论】:

  • 感谢公式罗恩!我编辑了我的问题,每个月会有多个条目。但是,我可能只是过滤掉数据,每月只得到一个条目,然后使用这个公式。
  • @BruceWayne 我会考虑一个公式。但是,根据您想要的最终产品,您可以考虑一个数据透视表,其中包含年的行和月的 Distinct Count 的值。但是,如果数据发生变化,您必须刷新并参考数据透视表列才能获得结果。
  • 好主意!一般来说,我只是想对最近的一年做一些分析。所以我基本上只是想问Excel“所有月份的最新术语是什么?” - 我只需要一个约会,就可以在那里工作。 (完全披露 - 还没有机会尝试你的公式,应该在明天之前)。
猜你喜欢
  • 1970-01-01
  • 2018-06-17
  • 1970-01-01
  • 1970-01-01
  • 2018-04-04
  • 1970-01-01
  • 1970-01-01
  • 2021-10-29
  • 1970-01-01
相关资源
最近更新 更多