excel中如何将二维数组转换成一维数组,比如3行3列数组转换成9行1列,用什么函数可以,怎么表示

如题所述

在E1单元格输入以下公式,然后向下填充公式

=OFFSET(A$1,MOD(ROW(A3),3),INT((ROW(A1)-1)/3))

 

详见附图

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-28
如果是数字,可以用N(offset())的模式转换;如果是文本,可以用T(offset())的模式转换。混合数字和文本的可以用 T(text(offset()))的模式
第2个回答  2014-11-28
e1=index(a:c,mod(row(-1,3)+1,roundup(row()/3,0)),下拉
第3个回答  2023-08-06
=LET(Seq,SEQUENCE(ROWS(table)*COLUMNS(table),1,0,1),INDEX(table,MOD(Seq,ROWS(table))+1,INT(Seq/ROWS(table))+1))
注意:
公式中的"table"是引用的二维数据区域名,也可以是二维数组;

此公式只能用于2021或365版;
顺序为一列接一列取数,自行修改公式可实现一行接一行取数;
公式所在单元格的下方有足够多的空白单元格,否则溢出错误。
相似回答