0

我正在寻找一个 excel 公式来计算日期是否是发薪日,如果发薪日是 15 日和 EOM。当然,如果考虑到 15 日或 EOM 是否在周末,逻辑上意味着您在前周五获得报酬。还要考虑银行假期时间表。

到目前为止,我想出了:
=IF(DAY('Date')=15, 'Y',IF('Date'='EOM(date)', 'N',''))

我正在使用计算“ EOM(日期)”
=WORKDAY(WORKDAY(EOMONTH('Date',0),1),-1)

所需的最终数据样本集:

     Date      | Paycheck  
  10/15/2013   |    Y
  10/14/2013   |    N
4

2 回答 2

2

用 A2 中的日期试试这个公式

=IF(OR(A2=WORKDAY(EOMONTH(A2,{-1,0})+{16,1},-1,holidays)),"Y","N")

其中holidays 是一个包含假日日期的命名范围

该公式查找当前月份的 16 号和下个月的 1 号(基于 A2 日期),然后查找紧接在这些日期之前的工作日(如果是工作日,则为 15 号和月末,或者之前如果没有,工作日)。如果 A2 是您得到“Y”的日期之一

于 2013-10-11T14:58:48.817 回答
0

您需要的第一件事是列出所有银行假期/公共假期并命名假期范围。那么这应该工作:

=IF(DAY(A1)=15,"Y",IF(A1=WORKDAY(DATE(YEAR(A1),MONTH(A1)+1,1),-1,holidays),"Y","N"))

A1 是它正在查看的第一个日期。

于 2013-10-11T14:04:30.623 回答