作者sssh (叫我松高魂 ~~)
看板Office
標題[算表] 關於EXCEL做類似遞回的工作但有條件限制
時間Sat Oct 27 01:06:39 2018
軟體:Excel
版本:2010
我手邊有一些出缺勤資料,
主要就是加班跟請假時數的紀錄
現在有一個問題想請教大家
假如我現在已知某人這個月的累積時數
我想要找這些時數最後是從哪些加班日累積出來的
並把這幾天日期條列出來
有辦法用函數這樣做嗎?還是要用VBA才能作?
=============
EX:假設某員工加班請假狀況如下
10/1 請假 3
10/3 加班 1
10/4 加班 4
10/8 請假 2
10/15 加班 5
10/18 請假 1
10/19 加班 6
10/21 加班 5
10/23 請假 2
10/26 加班 4
10/28 加班 3
10/30 加班 6
累積時數共20小時
==========
我自己的想法是,其實答案就是找出後面幾天加班的日子
從最後一天往前累加(本例:從10/30的6小時開始加,6+3+4+5+6>20)
加到超過20就知道最後面哪幾天加班是給這20小時
如果用程式設計的角度,
好像可以用For+If判斷是再配合遞回找出來
但是我想了一個晚上不知道怎麼用EXCEL函數找出來
想請各位前輩們指點一下~
還是說要用到VBA?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.16.159
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1540573602.A.D58.html
我第一個比較看不懂,
所以我自己實做第二個方式
但在H1的地方卻發生問題
可以在麻煩前輩幫我看一下哪裡出錯嗎?
感恩不盡
以下是截圖:
https://imgur.com/a7DryD5
※ 編輯: sssh (1.161.63.89), 10/27/2018 13:46:28
3F:推 Tokaku: 把大括弧{}去掉,第二個做法不需要陣列公式 10/27 15:02
4F:→ Tokaku: 第二個做法多了輔助欄,所以不需要陣列公式。 10/27 15:06
5F:→ sssh: 請教T大,我不用陣列,H1出來還是一個43380 XD 10/27 15:18
6F:→ sssh: 完全不知道43380哪來的@@ 10/27 15:19
7F:→ newacc: 43380是日期序列,把數值各式改成日期就可以顯示 10/27 16:53
8F:→ newacc: 格式* 10/27 16:53