- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2007、週末の場合は前の金曜日を返す?)
Excel2007で週末の場合は前の金曜日を返す方法は?
このQ&Aのポイント
- Excel2007のセルに特定の日数を足して2日前の日付を表示する式が入力されています。しかし、さらに「土曜、もしくは日曜日の場合は前の金曜日の日付を返す」という条件を加えたいと考えています。どのようにすれば、条件を満たす結果を表示することができるでしょうか?
- Excel2007のセルに特定の日数を足して2日前の日付を表示する式が入力されています。しかし、さらに「土曜、もしくは日曜日の場合は前の金曜日の日付を返す」という条件を設定したいと思っています。現在は条件付き書式を使っていますが、うまく表示されない問題が発生しています。解決策はありますか?
- Excel2007のセルに特定の日数を足して2日前の日付を表示する式が入力されています。しかし、土曜日や日曜日の場合は前の金曜日の日付を表示するようにしたいと考えています。条件付き書式を使用しているのですが、うまく表示されません。どのようにしたら正しく表示することができるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
K6セルには次の様な関数を入力されると良いと思います。 =IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),I6+F6-2-(WEEKDAY(I6+F6-2,2)>5)-(WEEKDAY(I6+F6-2,2)>6),"") 処で、 >結果的にK6には「1/18」を自動的に表示させたいのですが、 との事ですが、I6セルには「1/1」と入力されていて、その10日後の日の更に2日前の日付を、K6セルに表示させるのですから、「1/18」ではなく、「1/8」ではないでしょうか?
その他の回答 (1)
- bin-chan
- ベストアンサー率33% (1403/4213)
回答No.1
> 条件付き書式で以下のようにしても「1/19」のままになってしまいます。 > =IF(WEEKDAY($M6,1)=1,K6-2,K6) セルM6の登場が唐突に感じますが、何の目的のセル? セルK6に設定せずに、他セルを作業用に設けてはいけませんか?例えばセルL6とか。 セルL6に式[=I6+F6-2]を設定しておいて、 セルK6に式[=IF(WEEKDAY($M6,1)=1,L6-2,L6)]を設定したらどうなります?
補足
kagakusukiさん>> まず、 、「1/18」ではなく、「1/8」ではないでしょうか? その通りでこれは自分の記述ミスでした。ありがとうございます。 そして、上記の式で数日間悩んでいたものがその通りに動いた事にビックリしています! ありがとうございます!! 最後にもう1つ、「10日」と選択されているセルはプルダルン式のセルで10日~15日を選択出来るようになっていて この式を「10日」以外が選択された場合に適用されるようにしたいのです。 なので「11日」~「15日」が選択された場合に =IF(ISNUMBER(1/DAY(I6)/DAY(I6+F6-2)),I6+F6-2-(WEEKDAY(I6+F6-2,2)>5)-(WEEKDAY(I6+F6-2,2)> の式で動くようにするには、どうすれば良いでしょうか? もし出来たら、ご教授願います。