我有一個開始日期和結束日期的串列。我需要為每一行分配一個數字 - 該數字應該是特定行的范圍重疊的其他范圍的數量(僅來自上述行)。
我的計劃是使用此值將事件分配給日歷上的行,以免重疊。(更高的值會使事件增加更多行)
| 開始日期 | 結束日期 | 重疊計數 |
|---|---|---|
| 21/09/2022 | 20/10/2022 | 0 |
| 2022 年 10 月 18 日 | 20/10/2022 | 1 |
| 20/10/2022 | 22/10/2022 | 2 |
| 23/12/2023 | 28/12/2023 | 0 |
| 2022 年 10 月 19 日 | 2022 年 10 月 30 日 | 3 |
在上面的示例中,我手動填充了 C 列的預期結果,但我正在尋找一個公式來找到它。
我已經設法找到其他方法來檢查重疊并回傳TRUE,或者FALSE找不到計算重疊數量的方法。
uj5u.com熱心網友回復:
C2:
=COUNTIF(LAMBDA(ca,cb,MAP(A$1:A1,B$1:B1,LAMBDA(a,b,OR(ISBETWEEN(SEQUENCE(b-a 1,1,a),ca,cb)))))(A2,B2),TRUE())
MAP前一行的每個值到aandb并檢查它是否是BETWEEN當前的 aca和當前的 bcb
| 開始日期 | 結束日期 | 重疊計數 | COUNTIF(LAMBDA(ca,cb,MAP(A$1:A1,B$1:B1,LAMBDA(a,b,OR(ISBETWEEN(序列(b-a 1,1,a),ca,cb)))) )(A2,B2),真()) |
|---|---|---|---|
| 2022-09-21 | 2022-10-20 | 0.00 | 0 |
| 2022-10-18 | 2022-10-20 | 1.00 | 1 |
| 2022-10-20 | 2022-10-22 | 2.00 | 2 |
| 2023-12-23 | 2023-12-28 | 0.00 | 0 |
| 2022-10-19 | 2022-10-30 | 3.00 | 3 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/510329.html
