0

次の問題をエクセルで解いています。毎日、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")

true の場合、時間 "09:00" に次の営業日 (週末をスキップ) にスキップします。

それから WORKDAY(DATE(YEAR(A1);MONTH(A1);DAY(A1));1)+TIMEVALUE("09:00")

それ以外の場合は、1 分 (1 日の 1/24/60 分の 1) が追加されます。

そうしないと 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 に答える