我有一个公式,这里有人协助我,以便从多个工作表中引入数据。
=filter(choosecols('Master Line List'!A:I,3,6,9,7,1), 'Master Line List'!I:I=C1, if(D1="All",'Master Line List'!G:G<>"",'Master Line List'!G:G=D1),
byrow('Master Line List'!F:F,lambda(Σ,or(bycol(split(Σ,char(10)),lambda(Λ,isbetween(--left(Λ,find(" ",Λ)),G2,H2)))))))
效果很好,但我想更进一步。计算表中的 G2 和 H2 是开始/结束日期。目前,如果换行符中的任何一个日期包含 G2 和 H2 之间的日期,则当前会提取整个注释。
是否可以仅引入开始/结束日期内的注释并排除较早的换行符?
这是我尝试过的,但出现公式解析错误
=filter(
choosecols('Master Line List'!A:I, 3, 6, 9, 7, 1),
'Master Line List'!I:I = C1,
if(D1 = "All", 'Master Line List'!G:G <> '', 'Master Line List'!G:G = D1),
byrow(
'Master Line List'!F:F,
lambda(
Σ,
or(
bycol(
split(Σ, char(10)),
lambda(
Λ,
and(
isdate(--left(Λ, find(" ", Λ))),
isbetween(--left(Λ, find(" ", Λ)), G2, H2)
)
)
)
)
)
),
'Master Line List'!F:F <> ""
)
非常感谢任何帮助,谢谢!
您可以重复使用原来的公式,如下
=filter({choosecols('Master Line List'!A:I,3),map('Master Line List'!F:F,lambda(c,if(c="","",let(raw,split(c,char(10)),TF,map(raw,lambda(Λ,isbetween(--left(Λ,find(" ",Λ)),G2,H2))),join(char(10),filter(raw,TF)))))),choosecols('Master Line List'!A:I,9,7,1)}, 'Master Line List'!I:I=C1, if(D1="All",'Master Line List'!G:G<>"",'Master Line List'!G:G=D1),
map('Master Line List'!F:F,lambda(Σ,or(bycol(split(Σ,char(10)),lambda(Λ,isbetween(--left(Λ,find(" ",Λ)),G2,H2)))))))
评论栏替换为
map('Master Line List'!F:F
,lambda(c,if(c=""
,""
,let(raw
,split(c,char(10))
,TF
,map(raw
,lambda(Λ,isbetween(--left(Λ,find(" ",Λ)),G2,H2)))