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

如何使用Office Scripts按列名筛选Excel Online表格指定列并删除其余列

使用Office Scripts保留指定列并删除多余列

针对你需要保留Categ_No、Position和Bonus列,删除其他列的需求,下面是直接可用的Office Scripts代码,附带新手友好的说明:

完整脚本代码

function main(workbook: ExcelScript.Workbook) {
  // 获取目标表格(这里假设表格叫"Table1",如果你的表格名不同,改成实际名称)
  const targetTable = workbook.getTable("Table1");
  if (!targetTable) {
    console.log("未找到指定表格,请检查表格名称是否正确");
    return;
  }

  // 定义需要保留的列名数组
  const columnsToKeep = ["Categ_No", "Position", "Bonus"];

  // 倒序遍历表格列(正序删除会导致索引错乱,必须倒序)
  for (let i = targetTable.getColumns().length - 1; i >= 0; i--) {
    const currentColumn = targetTable.getColumns()[i];
    const columnName = currentColumn.getName();

    // 如果当前列名不在保留列表中,删除该列
    if (!columnsToKeep.includes(columnName)) {
      currentColumn.delete();
      console.log(`已删除列:${columnName}`);
    }
  }

  console.log("列删除操作完成,已保留指定列");
}

新手操作步骤

  • 打开你的Excel Online工作簿,点击顶部菜单栏的自动化 → 新建脚本
  • 把脚本编辑器里的默认代码替换成上面的代码
  • 修改代码中的"Table1"为你实际的表格名称(可以在表格左上角看到表格名)
  • 点击编辑器顶部的运行按钮,执行脚本

关键细节说明

  • 倒序遍历的原因:如果正序删除列,后面的列索引会往前移动,导致遗漏或错误删除列。倒序从最后一列开始删,就不会影响前面列的索引位置。
  • 表格名称验证:脚本开头会检查是否存在指定表格,避免因名称错误导致运行失败,控制台会输出提示信息。
  • 列名匹配:列名区分大小写,要确保columnsToKeep里的名称和表格实际列名完全一致(包括大小写和空格)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:11:04