提问人:JOAO RF 提问时间:3/3/2023 最后编辑:JOAO RF 更新时间:3/5/2023 访问量:74
在 Google 表格中创建一列拼合日期序列(不使用 MACRO FUNCTIONS)
Create flatten dates sequence in Google Sheets in one column (without using MACRO FUNCTIONS)
问:
我在 Google 表格中有一个表格,其结构如下:
开始日期 | 结束日期 |
---|---|
开始日期 1 | 结束日期 1 |
开始日期 2 | 结束日期 2 |
开始日期 3 | 结束日期 3 |
我使用以下公式:
IFERROR(FLATTEN( SEQUENCE(DATEDIF(D2,E2,"D"), 1, D2, 1), SEQUENCE(DATEDIF(D3,E3,"D"), 1, D3, 1), SEQUENCE(DATEDIF(D4,E4,"D"), 1, D4, 1), SEQUENCE(DATEDIF(D5,E5,"D"), 1, D5, 1) ),"")
这个公式对于我想要的结果(开始日期和结束日期之间的所有日期都在一列中)工作正常。
但是,从某种意义上说,它不是很有效,因为对于添加到表中的每一行,我都需要在我的公式中添加另一个 SEQUENCE 函数。
有没有办法只用一个 SEQUENCE 函数来实现这种自动化?
这个想法是这样的:
IFERROR(FLATTEN( SEQUENCE(DATEDIF(D2:D,E2:E,"D"), 1, D2:D, 1)),"")
但它就是行不通。我想知道我是否可以在不请求任何宏的情况下做到这一点。
我尝试了以下方法:SEQUENCE( SUM( DATEDIF(D2:D,E2:E,"D") ) , 1 ,SEQUENCE(DATEDIF(D2:D,E2:E,"D"), 1, D2:D, 1),1)
还有ArrayFormula(iferror(if(A2:A="",,transpose(split(concatenate(rept(A2:A&",",1+networkdays(A2:A,B2:B))),",")))))
我希望在一列中包含开始日期和结束日期之间的所有日期的序列,在结束日期之后,下一行将具有以下开始日期,依此类推。
先谢谢你!
答:
评论