【问题标题】:How to find the last 8 quarters and their years from the current quarter and year or a given date如何从当前季度和年份或给定日期查找最近 8 个季度及其年份
【发布时间】:2015-12-04 08:46:26
【问题描述】:

我正在尝试在 MS Excel 中查找给定季度和年份的最后 7 个季度。

例如。 如果我有 2016 年第一季度,那么我应该能够在一个单元格中找到 2015 年第四季度,在另一个单元格中找到 2015 年第三季度,依此类推,显示最后七个季度。这应该是动态的,即当当前季度发生变化时,年份也应该根据需要移动。

我已经能够使用以下公式找到上一个季度的数字:

=CHOOSE(CEILING(MONTH(E4)/3,1),1,2,3,4)

和

=IF(F5-1=0,4,F5-1)

但我无法保持年度动态。

如果当前季度是 2015 年第一季度,那么我需要的季度是:

Q4 2015
Q3 2015
Q2 2015
Q1 2015
Q4 2014
Q3 2014
Q2 2014

【问题讨论】:

  • E4 和 F5 中的值是多少?
  • 另外,希望在哪里“找到”这些“其他单元格”?换句话说,你到底想要什么?
  • E4 有当前日期。 F5 有选择公式。我确切想要的是我应该有一个单元格,它使用日期作为当前季度和年份。这个单元格应该可以向右拖动,以便我得到问题中所示的最后 8 个季度。
  • 那么你需要做的就是改变我对COLUMNS($A:A)的回答中的ROWS($1:1)项目

标签: excel excel-formula vba


【解决方案1】:

你的问题不清楚。但是,在E4 中有某个日期,以下公式将返回Qn YYYY。如果您然后填写正确,它将返回前几个季度。如果您的布局不同,则需要相应地调整公式。

编辑公式调整为能够向右而不是向下填充

F5:  ="Q" & INT(MONTH(EDATE($E$4,-(COLUMNS($A:A)-1)*3))/3)+1 &" " & YEAR(EDATE($E$4,-(COLUMNS($A:A)-1)*3))

公式从E4中的日期减去3个月的倍数;并计算该日期的季度和年份。通过使用ROWS 函数,每次填充一行时,该倍数就会增加。

【讨论】:

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