2015-09-02 78 views
0

我正在使用此公式來確定日期是否爲F列,發生在G列日期之後,但在G + 3列工作日之前的日期之前。包括工作日函數的Sumproduct

我用下面的公式,做得很不錯:

=SUMPRODUCT(($F$5:$F$1000>$G$5:$G$1000)*($F$5:$F$1000<($G$5:$G$1000+3))) 

但我意識到,我並沒有佔在最後的週末「+3」。

所以,我想這一點:

=SUMPRODUCT(($F$5:$F$1000>$G$5:$G$1000)*($F$5:$F$1000<(WORKDAY($G$5:$G$1000,3)))) 

,並返回#VALUE!出現這種情況我是否推按Ctrl ++輸入沒有。

請問我該怎麼做這項工作?

+0

提供一些更多細節。 – ManishChristian

+0

我正在使用此公式來確定日期是否爲F列出現在列G中日期之後,但列G + 3工作日之前的日期之前。 – jpf

+0

嘗試在公式中插入一個'+'符號以將範圍轉換爲數組:'WORKDAY(+ $ G $ 5:$ G $ 1000,3)' –

回答

1

由@Tim指定,workday函數不能接受範圍。但是你可以模擬通過使用此與weekday功能所需要的:

If(weekday(G2:G5; x)>=y;5;3) 

哪裏x是您週日的代碼,y是星期三。如果你的工作一天,而不是週三越大,那麼你將總結5,而不是3

=SUM(IF($F$2:$F$3 > $G$2:$G$3; 1; 0)* 
    IF($F$2:$F$3 < $G$5:$G$1000 + IF(WEEKDAY($G$2:$G$3)>= Y ;5;3); 1; 0)) 

平日不接受的範圍,它返回一個範圍平日。當你計算if(它也接受一個範圍)時,你創建一個0/1矩陣(就像你的 條件激活的行的指標矩陣)。如果你*兩個條件矩陣,你將有剩餘的行匹配兩個條件。最後,如果你應用這筆金額,你會得到計數。

這是模擬sumproduct當你有需要的公式

你將不得不使用Ctrl + Shift + Enter條件的方式。

03/09/2015 02/09/2015 
07/09/2015 03/09/2015 

使用這個日期我得到的2 哪個是正確的結果,兩個日期比他們的合作伙伴大於他們的合作伙伴,但較低的+ 3個工作日

PS:我用西班牙語Excel中,所以它可以是式錯誤轉換

0

WORKDAY函數的參數Start_Date不能接受範圍(例如,代碼中的$G$5:$G$1000)。如果沒有更多的細節和樣本數據,我不確定你想要做什麼,所以這是我能給你提供的最好的幫助。

1

Lori_m,評價我的問題提供了一種工作答案:

嘗試插入一個+號代入公式的範圍內轉換爲一個數組:WORKDAY(+ $ G $ 5 :$ G $ 1000,3) - lo ri_m 17小時前

謝謝。