我对 Excel 还比较陌生,我正在寻找一种方法来将同一个人的多个假期合并到一行中。以下是一些示例数据的样子;
我希望最终为这个人设置一行,但要加上 NumOfDays,因此在这个例子中,“测试人员”的 NumOfDays 列中有 7 个数字,但只有一行。我可以想象这并不难,尽管我仍然不确定如何做到这一点。
对我来说,事情变得复杂的地方在于我们只对截至 2016 年 9 月 30 日的 HolidayTo 感兴趣。例如,如果某人的 HolidayFrom 为 2016 年 9 月 28 日,HolidayTo 为 2016 年 10 月 3 日,那么这将列出 6 个 NumOfDays,而我只想记录截至 9 月 30 日的 3 个(28/29/30)。
有没有办法在 Excel 中完成所有这些操作?(所有日期均为英国格式,dd/MM/yyyy)
答案1
辅助栏
要停止计算 2016 年 9 月 30 日的天数,您可以使用以下辅助列“与 2016 年 10 月 1 日的差异”和公式:
=IF([@HolidayTo]<DATE(2016;10;1);0;DATEDIF([@HolidayFrom];DATE(2016;10;1);"d"))
以及“NumOfDays”列的公式:
=IF([@[Difference to 1.10.2016]]=0;DATEDIF([@HolidayFrom];[@HolidayTo];"d")+1;[@[Difference to 1.10.2016]])
这样,“NumOfDays”列中就只有截至 2016 年 10 月 1 日的天数。如果稍后您想更改结束日期,可以在公式中进行更改。
数据透视表
关于数据透视表以及如何创建/使用数据透视表,有许多书籍、视频教程和网站。由于您的问题可以用“简单”数据透视表来回答,因此您可以从以下方面开始Microsoft 支持:
- 单击包含数据的单元格范围内的任意单元格
- 点击插入, 然后数据透视表
- 选择字段(又名列名称和天数)
它看上去可能像这样:
。