• 締切済み

条件を満たした場合の日数計算

Win11&Excel2019で基準日を超過した日数計算(土日祝日除く)をしたいです。 休祭日を除いた超過の日数計算ですが、NETWORKDAYSで基準日を過ぎた日数取得まで分かりましたが、 これに条件を盛り込むと数式エラー・値エラーでうまくいきません。 判定を組み込むのが分かりません。どなたかわかる方教えてください。 やりたいこと。 ➀土日祝日を除いた日数 ②開始遅延(A列)、終了遅延(B列)となった場合、それぞれ基準日と比べて日数をマイナス値で出力(C列・D列)

みんなの回答

回答No.3

何が求めたいのでしょう? 基準日が 2024/05/12 であるのに 開始実施 は、2024/05/01では、開始遅延は、ないですよね。 もう少し表を精査して、質問される方がいいのではないでしょうか? 祝日が問題となっているようですが、シート2を、”祝日リスト”として A列に  =WEBSERVICE("http://api.excelapi.org/datetime/holiday-list?year=2024&line="&ROW()) 値が ”0” になるまでオートフィル B列に =WEBSERVICE("http://api.excelapi.org/datetime/holiday?date="&A1) 名前定義で ”祝日リスト” =祝日リスト!$A$1:$A$21       ”基準日”   =Sheet1!$M$1 とすると =NETWORKDAYS( ”もとめたい日付のセル”,基準日, 祝日リスト) というふうになるかと思います。

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.2

試した数式と「どう上手くいかなかったのか」をちゃんと書いたほうが いいです。 =IF(COUNTA(A2),NETWORKDAYS(M$1,I2,祝日一覧),"") =IF(AND(A2="",B2<>""),NETWORKDAYS(M$1,J2,祝日一覧),"") ???

回答No.1

Win11とExcel2019を使用して、土日祝日を除く超過日数の計算について、あなたのご要望に応える方法をご説明します。 NETWORKDAYS関数は平日の日数を計算するために使用されます。この関数は特定の期間内での祝日を除く平日の総数を計算しますが、開始遅延や終了遅延などの条件に基づいたマイナス値での超過日数を直接出すことはできません。 しかし、あなたの目的を達成するためには、NETWORKDAYS関数から得られた結果を別の条件付き計算によって修正する必要があります。例えば、開始遅延や終了遅延の日付が基準日を超える場合、超過した平日の数分だけ日数をマイナスすることが求められます。 以下はExcelの数式の一例です: ```excel =IF(A2 > 基準日, -NETWORKDAYS(基準日, A2, 祝日リスト), "") =IF(B2 > 基準日, -NETWORKDAYS(基準日, B2, 祝日リスト), "") ``` ここで、「基準日」は比較基準となる日付、「A2」は開始遅延が記載されているセル、「B2」は終了遅延が記載されているセル、「祝日リスト」は祝日が記入されたセル範囲を指しています。 上記の数式をC列とD列にそれぞれ適用することで、開始遅延と終了遅延について、基準日を超過する場合の平日の合計日数をマイナス値として出力します。 数式エラーや値エラーが発生した場合は、セルに入力した数式が正しいか、また基準日や祝日の形式が日付として正しく認識されているかどうかを再度確認してください。Excelでは日付データの形式が適切でないと、日数の計算に失敗することがあります。 万が一、この説明で数式の作成に不明点がある場合、具体的なセルのデータ例を提供いただければ、より具体的なアドバイスが可能です。 ------ こちらの回答はAIエージェント「あい」による自動投稿です。 OKWAVEのAIに対する取り組みについてはこちらをご確認ください。 https://staffblog.okwave.jp/2023/06/07/10415/

関連するQ&A