会社が異なれば、作業負荷の処理も異なります。一部の企業は通常のhttp://calendarcorner.net/[calendar]に関連付けられており、「就業月」はその月の最初の就業日から始まり、その月の最後の就業日に終わります。他の会社は、会計または他の目的のための特定のニーズを満たすために毎月の開始日と終了日を調整します。

1か月の特定の締め切り日を把握する必要がある場合があります。 ExcelのAnalysisToolPakのいくつかの関数を使用することで、このタスクをすばやく実行できます。

使用する主な関数はWORKDAY関数です。この機能を使用すると、開始日の前後の特定の就業日を決定できます。たとえば、今日の3日前の就業日を知る必要がある場合は、次のように関数を使用できます。

=WORKDAY(TODAY(),-3)

WORKDAYの最初の引数は、今日の日付を提供するTODAY関数です。 2番目の引数は、今日の前後の日数を示します。 WORKDAYは、月曜日から金曜日までの実際の就業日のみを返すことに注意してください。 (まあ、それはそれらの就業日の日付を返します。それは曜日に0から7を返すWEEKDAY関数とは異なります。)この特定の例では、今日が火曜日である場合、火曜日の3営業日前は木曜日です。 WORKDAYはその木曜日の日付を返します。

次に使用する必要のある関数はEOMONTHです。これは、特定の日付の前後の指定された月数で、月末の日付を返します。今月末を見つけるには、次のように関数を使用します。

=EOMONTH(TODAY(),0)

EOMONTHの最初の引数は、今日の日付を提供するTODAY関数です。 2番目の引数は、その日付の前後の月数で月末を指定することを示します。引数が0であるため、このEOMONTHの使用法は、当月の最終日を返します。

WORKDAYとEOMONTHを組み合わせると、次の方法で、当月末の3番目の就業日を決定できます。

=WORKDAY(EOMONTH(TODAY(),0),-3)

別の月の終わりの前の3番目の就業日を把握したい場合は、TODAY関数を目的の月の日付に置き換えるだけです。たとえば、セルC2に日付が含まれていて、その日付の月末より前の3番目の就業日を知りたい場合は、次を使用します。

=WORKDAY(EOMONTH(C2,0),-3)

この式は、実際には、その月の最後の就業日の3番目の就業日ではなく、その月の最後の日の3番目の就業日を返すことに注意してください。もちろん、これは土曜日または日曜日に終了する月を扱うときに役立ちます。月が土曜日または日曜日に終了する場合、関数はその日付の3営業日前、つまり水曜日を返します。ただし、最終就業日の3日前(金曜日)の日付が必要な場合は、実際には水曜日ではなく火曜日が必要です。

この場合、実際の月末が土曜日か日曜日かを確認する必要があるため、数式はさらに複雑になります。

ここでも、すべてをC2の日付に基づいていると仮定すると、次の式を使用できます。

=IF(OR(WEEKDAY(EOMONTH(C2,0))=1,WEEKDAY(EOMONTH(C2,0))=7), WORKDAY(WORKDAY(EOMONTH(C2,0),-1),-3), WORKDAY(EOMONTH(C2,0),-3))

C2の月末が土曜日(7)または日曜日(1)の場合、式は1日前(金曜日)の就業日を計算し、その3日前の就業日を計算します。それ以外の場合は、前の3番目の就業日を計算する通常の式が使用されます。

数式をさらに柔軟にしたい場合は、WORKDAYが一連の休日を補うこともできることを忘れないでください。休日を許可する最も簡単な方法は、一連の休日の日付を名前付き範囲( “Holidays”など)に入れてから、次に示すように、WORKDAY関数に3番目のパラメーターを追加することです。

=WORKDAY(EOMONTH(C2,0),-3,Holidays)

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(3287)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。