Board logo

標題: 非固定列數計算! [打印本頁]

作者: shan0948    時間: 2015-12-16 09:20     標題: 非固定列數計算!

[attach]22855[/attach]請問各位先進,小弟有一非上班人數日報表,其中日期欄是 1 至 31 日,2日的「前日上班人數」是1日「當日上班人數」再+2日當日公差人數-2日當日請假人數,就是2日的「當日上班人數」,每日公差及請假人數不一,也不是每日都會有公差及請假人數,小弟原先想法是先計算每日的公差及請假個別人數,再計算當日上班人數,但每日公差及請假人數不一,非固定列數造成個別人數及當日上班人數是變動不一,不知用何函數設定才能因應,請各位先進指教,謝謝!
作者: hcm19522    時間: 2015-12-16 10:40

當日公差人數(從第三列)=IF(A3="","",SUMPRODUCT((LOOKUP(ROW(A3:A$16),ROW(A3:A$16)/(A3:A$16<>""),A3:A$16)=A3)*(F3:F$16="公差")))
程式公差改請假 ,是當日請假人數(從第三列)
作者: shan0948    時間: 2015-12-16 13:18

回復 2# hcm19522


    H 大好,指導的公式已可以滿足計算出每日的公差及請假各別之人數,不過此表主要的人數顯示是 B 欄的「前日上班人數」及C 欄的「當日上班人數」,都是用總數顯示,如1日的「前日上班人數」是 73 人,加公差5人減請假3人,「當日上班人數」是75 人,依此類推下去,而 1 日和 2 日之間均不顯示人數,不知如何設函數,是否可用輔助欄,再麻煩指導,謝謝!
作者: hcm19522    時間: 2015-12-16 14:02

C3=IF(A3="","",B3+SUMPRODUCT((LOOKUP(ROW(A3:A$16),ROW(A3:A$16)/(A3:A$16<>""),A3:A$16)=A3)*(F3:F$16="公差"))-SUMPRODUCT((LOOKUP(ROW(A3:A$16),ROW(A3:A$16)/(A3:A$16<>""),A3:A$16)=A3)*(F3:F$16="請假")))
B4=IF(A4="","",LOOKUP(1,0/(C$3:C3<>""),C$3:C3))
是如此?
作者: shan0948    時間: 2015-12-16 15:20

回復 4# hcm19522


    H 大好,太捧了,經測試後完全符合需求,如此在工作上可以省下很多紙張,謝謝10000*N!
作者: 准提部林    時間: 2015-12-16 22:50

同E大:
C3公式
=IF(A3="","",B3+SUMPRODUCT((LOOKUP(ROW(A3:A$16),ROW(A3:A$16)/(A3:A$16<>""),A3:A$16)=A3)*(F3:F$16={"公差","請假"})*{1,-1}))
或:
=IF(A3="","",B3+SUMPRODUCT((SUBTOTAL(4,OFFSET(A$2,1,,ROW(A3:A$16)-2))=A3)*(F3:F$16={"公差","請假"})*{1,-1}))
作者: shan0948    時間: 2015-12-17 10:19

回復 6# 准提部林


    准大好,您指導的公式經過實際使用後完全符合需求,也學到了公式技巧,謝謝,感恩!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)