0

我正在用 Excel 解决以下问题。我需要为每天从 09 到 17 生成一分钟到一分钟的行。它应该如下所示:

Time
01.01.2013 09:00
01.01.2013 09:01
01.01.2013 09:02
01.01.2013 09:03
01.01.2013 09:04
01.01.2013 09:05
01.01.2013 09:06
01.01.2013 09:07
01.01.2013 09:08
01.01.2013 09:09
01.01.2013 09:10

以此类推,再持续 10 年。周末也应该被排除在外(如果这是不可能的,最好至少在下一列中标记哪些行是周末,哪些行不是)。

有什么解决方案可以生成这种时间维度吗?

4

1 回答 1

0

在单元格 A1 中输入:01.01.2013 09:00:00或您的第一个日期和时间。
在单元格 A2 中输入:

=IF(TIME(HOUR(A1);MINUTE(A1);SECOND(A1))=TIMEVALUE("17:00");WORKDAY(DATE(YEAR(A1);MONTH(A1);DAY(A1));1)+TIMEVALUE("09:00");A1+1/24/60)根据需要向下拖动单元格 A2 以填充。

该公式的作用是检查前一个日期时间以查看时间是否为“17:00”:

如果 TIME(HOUR(A1);MINUTE(A1);SECOND(A1)) = TIMEVALUE("17:00")

如果是真的,那么它会在时间“09:00”跳到下一个工作日(跳过周末):

然后 WORKDAY(DATE(YEAR(A1);MONTH(A1);DAY(A1));1)+TIMEVALUE("09:00")

否则它会增加 1 分钟(一天的 1/24/60 部分):

别的 A1+1/24/60

PS1:如果您不想跳过周末,请在公式中修改THEN部分,如下所示:

DATE(YEAR(A1);MONTH(A1);DAY(A1)) + 1 + TIMEVALUE("09:00")

PS2:大约 8 年零 5 个月后,您将到达 Excel 行的末尾(1048576)...

于 2013-06-25T22:14:08.517 回答