Excel数式、前の水曜日の日付を取得


3

私は次の式を持っています

=WORKDAY(TODAY(),-2)

1月30日です。

とにかく、この式に-2を入れずに1月30日を得ることができますか?私は彼が常に前の水曜日の日付を取得するようにしたいのですが、前の水曜日を取得するために手動で今日の就業日を差し引くだけです。

回答:


1

参考までに、以前に受け入れられた回答は、いくつかのシナリオで将来の日付を誤って出力します

この式は、前の水曜日を出力します。

=TODAY()-MOD(WEEKDAY(TODAY())+2,7)-1

今日が水曜日の場合、前の水曜日も出力します。

MOD(..., 7) 常に0〜6の値を返します。

したがって、-MOD(...)-1から1〜7(日)の値を常に減算しますTODAY()

+2式の値を調整して、異なる平日を取得できます)


例:

  • 今日は2019-2-25 (Mon)、出力2019-2-20 (Wed)
  • 今日は2019-2-26 (Tue)、出力2019-2-20 (Wed)
  • 今日は2019-2-27 (Wed)、出力2019-2-20 (Wed)
  • 今日は2019-2-28 (Thu)、出力2019-2-27 (Wed)

いいね!これはもっと欲しいものです。とにかく前に戻す代わりに現在の水曜日を使用することはできますか?
excelguy

はい、それはさらに簡単になります。ここで、あなたは以下の通りです=TODAY()-MOD(WEEKDAY(TODAY())+3,7)MOD(...)あなたは[今日-6days] [今日]から測距結果を得ることができるように、常に、0から6までの値を返します。
ウィルソン

8

どうですか:

=TODAY() - MOD(TODAY(), 7) + 4

これは、今週の最初の日(土曜日)を取得し、4 =水曜日を追加することを意味します(前週の場合は-7)。

(日曜日か月曜日にまだある場合)は、前の週にしたい場合は、使用ifのためにMOD(TODAY(), 7)


1
説明の後に問題が発生します。現在の週の最初の日が土曜日になっているのはなぜですか(使用しているカレンダーシステムによっては月曜日または日曜日ではありません)?土曜日に4を追加すると、水曜日が表示されることがわかりますが、-7で前の水曜日に表示されるのはなぜですか?土曜日-7 =土曜日のようです。注:私は式に疑問を投げかけるのではなく、単にそれに伴う説明に疑問を投げかけています。
ジョンベントレー

@JonBentley -7は、示された式に追加されることを意図しており、+ 4の代わりにはなりません。MOD(TODAY()、7)がこの非常に役立つ結果を生成する理由については、私も興味があります。
アレックスM

1
@AlexM Excelの日付は整数のようなものです。たとえば、今日は43497です。MOD式を使用して7で割ると、1日が金曜日の場合は常に6を返します。これは、Excelが最初の日を受け入れるために機能します。7で割ることにより、常に0〜6の数値が得られることが保証されます(7/7 = 1であるため、何も返されません)。8/7は、全員に対して1を返し、分割されていない1を返します。
モアシール

今週の土曜日に行きました(土曜日が最初の日になると考えてください)。その後、+ 4で水曜日に修正します
Moacir

@Moacir情報ありがとう。私はこれが別の質問の餌である可能性が最も高いと思いますが、非常に好奇心が強いと思います(これはExcelが私の経験で日付を扱う方法について他のすべてに適合するだけです)、TODAY()は日付を返します '日付としてフォーマットされている」場合は、基礎となる日付値に対して数値演算を使用できます。混乱に加えて、空のセルに= MOD(TODAY()、7)を入力すると、この動作をテストするために1900/1/6が出力されました。 )、日付としてのみフォーマットされます。
アレックスM
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.