2017-01-04 11 views
0

私は、私たちの会社が取り組んでいるプロジェクトの情報からなる特定のデータセットを持っています。各プロジェクトは5つの異なるステータスを経ることができ、プロジェクトがその特定のステータスに置かれる各日付を記録する列があります。Excel Forumla/VBA計算用の空白の列をスキップする

今Excelの部分です。私たちは各ステータスの日数を計算し、プロジェクトの総時間を求めています。プロジェクトの提出日とプロジェクト開始日のネットワーク日を使用できるので、合計は簡単です。しかし、状況によっては、プロジェクトがステータスをスキップして日付フィールドを空のままにしてしまうことがあるため、問題が発生しています。したがって、プロジェクトがステータスBからステータスDに移行すると、ステータス「B」の日の数式は、「C」列の日付を検索してNETWORKDAYS式の2番目の日付として使用します。空の場合、IF引数はTODAY()を2番目の日付として使用するように数式に指示します。私がする必要があるのは、右側の列(その列のA:Eの範囲内)を検索し、その日付が存在する場合はその日付を使用することです。そうでない場合は、TODAY()にデフォルト設定できます。これは、移動していない「アクティブな」プロジェクトになるためです。任意のマクロまたはより良い式がある場合

PROJECTID PROJECTNAME INTAKEDATE SCOPEATE BUILDDATE TESTDATE GOLIVEDATE INTAKEDAYS SCOPEDAYS BUILDDAYS TESTDAYS

=IF(IF(OR([@STALLED]<>"",[@CANCELED]<>""),"",IF([@INTAKEDATE]="","",IF([@SCOPEATE]="",NETWORKDAYS([@INTAKEDATE],TODAY()),(NETWORKDAYS([@STATUSADATE],[@SCOPEATE])))))<0,"",(IF(OR([@STALLED]<>"",[@CANCELED]<>""),"",IF([@INTAKEDATE]="","",IF([@SCOPEATE]="",NETWORKDAYS([@INTAKEDATE],TODAY()),(NETWORKDAYS([@STATUSADATE],[@SCOPEATE]))))))) 

この

は、表は次のようになりますので、ステータスごとに行われています誰かが私を理解するのを助けることができた、私はそれを感謝します。また、現在の状況を示す別のフィールドや、それがまったく役に立ったらプロジェクトが生きていると見なされるフィールドもあります。私は今すぐエクセルブロックしており、これに対して意味をなさない何かを考えることはできません。

+0

私は自分の場合、MINを使う必要があると思いますが、次の即時ステータス日をスキップして日数がスキューするので、私は 'MAX'を使って考えていませんでした。 対象: = IF([(@ @ STALLED] <> ""、[@ CANCELED] <> "")、 ""、IF([@ BUILDDATE] = "") ([(@(OR @)]))))))))))<)、 [@ INTAKEDATE] = ""、 ""、F([@ BUILDDATE] = ""、NETWORKDAYS([@ SCOPEDATE]、 MIN([@ BUILDDATE]:[@ GOLIVEDATE])))))))))) – andresej21

答えて

0

だから私はMINを使って、IFの式を少し調整してみました。誰もがそれ以前に約MAXを投稿してくれたので、本当に私をこの道に導いてくれました。あなたへの誇り/奥さん。

SCOPEDATE = BUILDDATEかどうかをチェックするために、日付が一致した場合は1を返し、INTAKEDATEからGOLIVEDATEまでのネットワーク日を実行した場合と比べると1日多く追加しています。

=IF(OR([@STALLED]<>"",[@CANCELED]<>""),"", 
    IF([@SCOPEDATE]="","", 
    IF([@SCOPEDATE]=[@BUILDDATE],0, 
    IF(NETWORKDAYS([@SCOPEDATE],(MIN([@BUILDDATE],[@TESTDATE],[@GOLIVEDATE])))<0,NETWORKDAYS([@SCOPEDATE],TODAY()),NETWORKDAYS([@SCOPEDATE],(MIN([@BUILDDATE],[@TESTDATE],[@GOLIVEDATE]))))))) 

これは他の人にとって役立つことを願っています。

関連する問題