索引 - 偏移量 - 数组公式

Index - Offset - Array Formula

我正在使用 OFFSET 函数将 "Question" 列转置为行,这样每一行都会对应一个 Link/Question 组合,如第二个 table 所示。

如果 C 列为空,我可以隐藏 A 列和 B 列中的值,但这在我的 table 中占用了太多 space(我的完整数据包含 11 个问题,以及数百行,如果我为每个问题列创建一行 ,这些行将不适合我的 sheet。我需要将我的函数转换为一个数组公式,该公式只会为每个 Link/non 空白问题组合填充一行,这样下图中的第 9 行就不会显示,并且它的公式根本不存在。我正在使用 Gsheets.

A 列的第一个函数 C 列的第二个函数

OFFSET($A,FLOOR((ROW($A1)-ROW($A))/2,1),0)
OFFSET($C,FLOOR((ROW(A1)-ROW($A))/2,1),MOD((ROW(A1)-ROW($A))/2,1)*2)

请在A7中尝试:

=query({query(A2:C3,"select A,B,C where C is not NULL");query(A2:D3,"select A,B,D where D is not NULL")})

@Annan (thank you!) 所述。

这确实与 excel 中的相同。但我无法帮助“只为每个 Link/non 空白问题组合填充一行”部分。尝试:

A7    =if($C7="","",index($A:$D,int((row(A7)-7)/(COLUMNS($A:$D)-2))+1,match(A,$A:$D,0)))

B7    =if($C7="","",index($A:$D,int((row(B7)-7)/(COLUMNS($A:$D)-2))+1,match(B,$A:$D,0)))

C7    =index($A:$D,int((row(C7)-7)/(COLUMNS($A:$D)-2))+1,(2+if(mod(row(C6)-5,COLUMNS($A:$D)-2)=0,COLUMNS($A:$D)-2,mod(row(C6)-5,COLUMNS($A:$D)-2))))

并拖动到 A10:C10。

希望它有所帮助,但它会很有用..:)