Excel 在日期上添加一个月,确保该日期不会恰逢周末

标签 excel

我在单元格 A1 中有一些工作日,比如 2013 年 7 月 25 日。我使用公式添加一个月 edate(A1,1),返回 25/08/2013,这是一个周末。如何确保返回下一个工作日?

最佳答案

您可以查看此链接:http://office.microsoft.com/en-001/excel-help/workday-HP005209339.aspx在函数 WORKDAY 上,它将返回下一个工作日。 人们很容易使用 Workday(A1,0) 来查找 A1 中指定的日期之后的下一个工作日,但它并没有完成这项工作。

所以我们需要做这个技巧:

=Workday( edate(A1,1)-1 , 1 )

结果是一个数字,表示下一个工作日的序列号。 诀窍是你考虑前一天,然后找到它之后的下一个工作日。因此,如果日期是工作日,则返回该日期,如果不是工作日,则返回下一个工作日。

不过,我希望微软修改这个方法,这样当你输入工作日(A1,0)时,它会自动返回下一个工作日。

例如,您想要查找 2013 年 6 月 27 日之后一个月的下一个工作日(即 2013 年 6 月 27 日,但那是星期六,所以它应该返回 2013 年 6 月 29 日):

=Workday( edate(date(2013,6,27),1)-1 , 1 )

将返回您40022,它指的是日期2013年7月29日,即下一个工作日。

要获得 2013 年 7 月 29 日的格式化结果,您需要使用 Format->Cell->Date 设置单元格格式

关于Excel 在日期上添加一个月,确保该日期不会恰逢周末,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17848367/

相关文章:

excel - 使用 VBA 代码从数据列创建 Pivot 的问题

VBA 集 = 不同工作簿上的工作表

xml - 使用 VBA 在 XML 文件中动态搜索数据

vba - 如何自动从 Excel 中的一个工作表复制数据并将其附加到另一工作表中的现有表?

Java:替换字符串(用括号!)

excel - 根据 Excel 中两个不相邻单元格的值创建范围

java - java中Excel到csv的转换。货币表示问题

excel - VBA 下标超出范围 - 错误 9

vba - 获取 msoFileDialogFolderPicker 的初始路径

excel - 我可以在 SUMProduct 中使用 INDIRECT 吗?