妮可需要计算一份合同的工作周数。合同开始日期(单元格A1)为11月15日,应在单元格C1中显示为第一周。因此,当11月22日临近时,将是第二周。当在单元格B1中输入合同完成日期时,单元格C1应反映出A1和B1之间的周数,并按所示四舍五入。妮可想知道是否有一个函数或公式可以帮助她确定正确的合同周数。

您可以使用许多公式来确定合同周数。但是,您使用的任何公式都应检查单元格B1,如果该单元格为空(表示合同尚未终止),则可以简单地根据今天的日期进行计算。这是进行检查并返回正确的合同周数的公式:

=IF(ISBLANK(B1),ROUNDUP((TODAY()-A1)/7,0),ROUNDUP((B1-A1)/7,0))

如果将IF函数放在ROUNDUP函数中,则公式可以缩短:

=ROUNDUP((IF(ISBLANK(B1),TODAY(),B1)-A1)/7,0)

当然,如果您不想在计算中使用今天的日期,而是表示合同仍未平仓,则可以返回第一个公式的以下变化:

=IF(ISBLANK(B1),"Contract Open",ROUNDUP((B1-A1)/7,0))

到目前为止,所有这些示例公式都可能无法正确处理一周的边界。例如,如果合同开始时间为11月15日,合同结束时间为11月22日,则公式将返回1。但是,您可能希望它返回2,这意味着自合同于11月22日终止以来,它应该始终将这一天视为第二周。如果是这种情况,那么您只需在任何公式中加1,如下所示:

=ROUNDUP((IF(ISBLANK(B1),TODAY(),B1)-A1+1)/7,0)

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本提示(13592)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。