2016-05-25 8 views
0

これについてはまだ何も見つかりません... 私のファイルは毎月生産を追跡するためにスタッフによって使用されています。シート上のセルは、月の最初の日付が含まれている - すなわち、May 1, 2016私は月が前のシート(May 1, 2016)に記載されているためだけ就業日をリストし、テーブルを構築する必要があります指定された動的月の就業日のみを表示

。私は= WORKDAYS関数を使用して、就業日のリストを作成し、その月の曜日のリストを完成させることができましたが、問題は次の月の日付の一覧表示だけです。私はちょうど使用しています:

=WORKDAY(C2,1) May 30 
=WORKDAY(D2,1) May 31 
=WORKDAY(E2,1) June 1 

など、日付を記入する。私の例では、翌月に続行するのではなく、""を返すようにします。

私が使用することができますIF文のいくつかの並べ替えがありますと仮定していますが、私は...チェックが、それはである非常にセルをチェックする必要がある場合には、循環参照を回避する方法を見つけ出すことはできません

+0

あなたはそれが月の最終日であるかどうかを確認するために、前のセルをチェックします:私はA31のセルにそれをコピーし、それが適切な就業日の日付を与え、今月末で停止していることに注意してください。 [EOMONTH関数](https://support.office.com/en-us/article/EOMONTH-function-7314ffa1-2bc9-4005-9d66-f49db127d628)を使用して比較してください。 – tigeravatar

+0

これはうまくいかないようです。毎月の最終日は就業日ではありません(つまり、4月、最後の就業日は4月29日で、4月30日ではありません)。 – mattinwpg

+0

月()の前回の行がMONTH()の現在の行と同じかどうかを確認してください( ""ではない場合)。彼らが等しい場合は、現在の行のあなたの日付を入力してください –

答えて

2

Sheet2セルA1の日付値May 1, 2016

は、ヘッダであるので、実際の日付がセルA2に開始されます。セルA3に続いて

=IF(WEEKDAY(Sheet1!A1,2)<6,Sheet1!A1,WORKDAY(Sheet1!A1,1)) 

とダウンコピーこの式である:セルA2には月の最初の稼働日を取得するには、この式で

=IF(A2="","",IF(MONTH(WORKDAY(A2,1))<>MONTH(A2),"",WORKDAY(A2,1))) 

示すように、あなたは結果を得ることができます。

tigeravatar example for mattinwpg

+0

これは美しく、まさに私が探していたものです。どうもありがとうございました。 – mattinwpg

+0

私は両方の式に少し更新することをお勧めします。 '= IF(WEEKDAY(Sheet1!A1,2)<6、Sheet1!A1、WORKDAY(Sheet1!(A2,1、BankHolidays))」および「= IF(A2 = ""、 ""、IF(MONTH(WORKDAY(A2,1))<>月(A2) )) 'ここで' BankHolidays'は名前付き範囲です - これは英国で2月と30日を削除します。 –

0

方法この数式について:

セルD2の月と年がセルE2の月と等しいかどうかを確認します。これが当てはまらない場合、それはあなたに空のセルを与えます。

これがうまくいくかどうか教えてください。 Sheet1セルA1で

+0

これは循環参照エラーをスローします。これは私が実行し続ける問題です。 – mattinwpg

関連する問題