
答案1
使用 Office 365:
=LET(
us,A2:A201,
hr,B2:D201,
ttl,A1:D1,
VSTACK(ttl,DROP(REDUCE("",us&"|"&BYROW(hr,LAMBDA(z,TEXTJOIN("{",FALSE,z))),LAMBDA(a,b,LET(c,TEXTAFTER(b,"|"),VSTACK(a,HSTACK(TEXTSPLIT(TEXTBEFORE(b,"|"),,";"),DROP(TEXTSPLIT(REPT(c&"}",ROWS(TEXTSPLIT(b,,";"))),"{","}"),-1)))))),1)))
基本上,它將在(用戶)範圍;
內分割文字。然後它在(層次結構)範圍us
內按行重複值。hr
然後將它們水平堆疊。
然後,REDUCE 將垂直堆疊每行的輸出。最後我們堆疊在ttl
(標題)範圍上。