excel - 检查下n行的日期是否在时间范围内

时间:2018-03-23 13:00:37

标签: excel

我需要计算以下变量SIM:

SIM = d/130, in which d is the number of days in the next 130 business days that lie between the second business day in May and the 15th business day of October.

我对它的计算(在excel中)目前看起来像这样(这是不正确的):

                 SIM
date                
1990-06-08  0.715385
1990-06-11  0.707692
1990-06-12  0.700000
1990-06-13  0.692308
1990-06-14  0.684615
1990-06-15  0.676923
1990-06-18  0.669231
1990-06-19  0.661538
1990-06-20  0.653846
1990-06-21  0.646154
1990-06-22  0.638462
1990-06-25  0.630769
1990-06-26  0.623077
1990-06-27  0.615385
1990-06-28  0.607692
1990-06-29  0.600000
1990-07-02  0.592308
1990-07-03  0.584615
1990-07-05  0.576923
1990-07-06  0.569231
1990-07-09  0.561538
1990-07-10  0.553846
1990-07-11  0.546154
1990-07-12  0.538462
1990-07-13  0.530769
1990-07-16  0.523077
1990-07-17  0.515385
1990-07-18  0.507692
1990-07-19  0.500000
1990-07-20  0.492308
...              ...
2015-03-23  1.000000
2015-03-24  1.000000
2015-03-25  1.000000
2015-03-26  1.000000
2015-03-27  1.000000
2015-03-30  1.000000
2015-03-31  1.000000
2015-04-01  1.000000
2015-04-02  1.000000
2015-04-06  1.000000
2015-04-07  1.000000
2015-04-08  1.000000
2015-04-09  1.000000
2015-04-10  1.000000
2015-04-13  1.000000
2015-04-14  1.000000
2015-04-15  1.000000
2015-04-16  1.000000
2015-04-17  1.000000
2015-04-20  0.992308
2015-04-21  0.984615
2015-04-22  0.976923
2015-04-23  0.969231
2015-04-24  0.961538
2015-04-27  0.953846
2015-04-28  0.946154
2015-04-29  0.938462
2015-04-30  0.930769
2015-05-01  0.923077
2015-05-04  0.915385

在Excel中,是否有一种简单的方法可以查看接下来的130行(日期)并查看其中有多少位于特定日期范围之间?

1 个答案:

答案 0 :(得分:1)

假设您在第10行并且日期是col A,以下公式确定下一个130中的行数在150天内(包括在内)

=COUNTIF(A11:A140;"<="&A10+150)

由于您不希望返回固定的天数 - 但是回到5月2日(如果第1天是星期日)或者相应年份的5月1日,您可以获得截止日期(假设再次排第10行) )通过

=IF(WEEKDAY(DATE(YEAR(A10);5;1))=1;DATE(YEAR(A10);5;2);DATE(YEAR(A10);5;1))

将所有这些结合在一起会产生一个稍微可怕的但是(至少对我来说)工作公式

=COUNTIF(A11:A140;"<="&IF(WEEKDAY(DATE(YEAR(A10);5;1))=1;DATE(YEAR(A10);5;2);DATE(YEAR(A10);5;1)))

它的作用是:它检查从第11行(一个低于当前值)到140(即在接下来的130行)中的日期等于或等于第10行的年份的May1 / May2。

以下是关于COUNTIF事物的更多信息:https://support.office.com/en-us/article/countif-function-e0de10c6-f885-4e71-abb4-1f464816df34