You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Google Sheets单列数据拆分至5列?

方案1:用INDEX公式批量拆分

假设原始数据在A列(从A1开始),在B1单元格输入公式:

=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))

输入完成后,按住单元格右下角的填充柄向右拖动到F1,再向下拖动填充整列,即可自动将每5行数据拆分为一行5列的记录。

方案2:用数组公式一键生成结果

在空白单元格(比如B1)输入以下数组公式,回车后直接生成所有拆分后的数据:

=ARRAYFORMULA(IFERROR(INDEX($A:$A, (ROW(A1:A)-1)*5+COLUMN(A1:E1))))

这个公式会自动遍历A列数据,按每5个字段为一组,横向填充到对应列中,无需手动拖动填充。

方案3:手动转置(适合少量数据)
  1. 选中A1:A5(第一条记录的5个字段),按Ctrl+C复制
  2. 右键点击B1单元格,选择「粘贴特殊」→「转置」,此时第一条记录会横向排列在B1-F1
  3. 重复上述操作,依次选中A6:A10、A11:A15等,转置到B2、B3等行即可
方案4:用Apps Script自动处理(适合大量数据)
  1. 打开Google Sheets,点击顶部菜单栏「扩展程序」→「Apps脚本」
  2. 删除默认代码,粘贴以下脚本:
function splitColumnToRows() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const rawData = sheet.getRange("A:A").getValues().filter(row => row[0] !== "");
  const splitData = [];
  
  for (let i = 0; i < rawData.length; i += 5) {
    const row = rawData.slice(i, i + 5).map(item => item[0]);
    splitData.push(row);
  }
  
  sheet.getRange(1, 2, splitData.length, splitData[0].length).setValues(splitData);
}
  1. 点击运行按钮,完成授权后,脚本会自动将A列数据按每5个一组拆分,写入B列开始的区域

内容的提问来源于stack exchange,提问作者maxhugen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 16:40:58