Google Sheets中将单行数据拆分为多行的技术求助
解决Google Sheets单行转多行的问题
针对你需要将单行多列数据拆分为多行的需求(即把每行的标识信息+多个关联数据项,拆成每行对应一个标识+单个数据项),这里提供两种实用的Google Sheets公式方案:
基础拆分公式(保留空值)
如果不需要过滤空单元格,直接拆分所有数据:
=ARRAYFORMULA(SPLIT(FLATTEN(A2:A&"|"&B2:E),"|"))
- 替换
A2:A为你的标识列(如项目名称列)范围 - 替换
B2:E为需要拆分的多列数据范围
过滤空值的拆分公式
如果要跳过空的单元格,只保留有内容的行:
=LET( data, A2:E, names, INDEX(data,,1), values, INDEX(data,,2):INDEX(data,,COLUMNS(data)), combined, FLATTEN(names&"|"&values), filtered, FILTER(combined, NOT(ISBLANK(SPLIT(combined, "|")[,2]))), SPLIT(filtered, "|") )
- 修改
data变量的值为你实际的原始数据区域(比如A2:D10)
使用步骤
- 打开目标Google Sheets表格
- 选择一个空白单元格(建议在原始数据右侧的空白列起始位置)
- 输入上述公式并按回车,公式会自动生成拆分后的多行数据
内容的提问来源于stack exchange,提问作者dieuts
相关产品推荐
相关产品推荐

