
這是我的專案的一個非常精簡的版本。
我有一個透過 PowerQuery 根據每日時間表計算出的資料表。這代表每位員工在過去十二個月中生病的時間。
在該表輸入員工姓名、他們工作的設施及其計算結果後,我執行了一堆其他查詢布拉德福德分數
最後,我得到了一張包含公式的表格,這樣我就可以按設施進行過濾以發送給各個經理。下圖中的
列將是溢出範圍,儘管對於我的範例來說,它只是溢出的第一列。G:M
在上表旁邊,我想在每位員工旁邊新增每個缺勤期的日期。這個想法是,經理可以通知我在處理問題時從評分中刪除某些時段。
這個公式可以做到這一點,但我需要向下拖曳溢出範圍內的每一行。我還沒有決定如何呈現它,所以有兩個回傳值。
=LET(SickDates,TEXT(FILTER(FILTER(RollingSick,RollingSick[Emp No]=G2),{0,0,0,1,1}),"dd-mm-yy"),
JoinDates, INDEX(SickDates,,1) & " to " & INDEX(SickDates,,2),
Return1, TEXTJOIN(" | ",FALSE,JoinDates),
Return2, TRANSPOSE(JoinDates),
Return1)
如果可能的話,我希望這能溢出來,但無法弄清楚。
我的一些嘗試:
在每行上傳回相同的日期。
=IF(G2#="","",
LET(SickDates,TEXT(FILTER(FILTER(RollingSick,RollingSick[Emp No]=G2),{0,0,0,1,1}),"dd-mm-yy"),
JoinDates, INDEX(SickDates,,1) & " to " & INDEX(SickDates,,2),
Return1, TEXTJOIN(" | ",FALSE,JoinDates),
Return2, TRANSPOSE(JoinDates),
Return1))
返回#N/A
=LET(SickDates,TEXT(FILTER(FILTER(RollingSick,RollingSick[Emp No]=INDEX(G2#,SEQUENCE(COUNTA(G2#)))),{0,0,0,1,1}),"dd-mm-yy"),
JoinDates, INDEX(SickDates,,1) & " to " & INDEX(SickDates,,2),
Return1, TEXTJOIN(" | ",FALSE,JoinDates),
Return2, TRANSPOSE(JoinDates),
Return1)
只回傳第一行:
=LET(SickDates,TEXT(FILTER(FILTER(RollingSick,RollingSick[Emp No]=INDEX(G2#,ROW()-ROW($G$1))),{0,0,0,1,1}),"dd-mm-yy"),
JoinDates, INDEX(SickDates,,1) & " to " & INDEX(SickDates,,2),
Return1, TEXTJOIN(" | ",FALSE,JoinDates),
Return2, TRANSPOSE(JoinDates),
Return1)