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

请求协助:Google Sheets筛选机器安装进度中‘NOT OK’项

解决Google Sheets筛选状态为「NOT OK」项的方案

别着急!我给你准备了三种简单的方法,从最适合新手的零代码操作到自动化的宏,你可以选最顺手的来:

方法一:用内置筛选功能(零代码,最简单)

这是对新手最友好的操作,完全不用写公式或代码:

  • 打开你的Google表格,选中数据区域的任意单元格(或者直接点表头行)
  • 点击顶部菜单栏的「数据」>「创建筛选器」,这时每个表头右侧会出现一个小箭头
  • 找到「Status」列的箭头,点击后取消勾选「全选」,只勾选「NOT OK」,最后点击「确定」
  • 现在表格就只会显示状态为「NOT OK」的机器记录啦,想恢复全部显示的话,再点「Status」列的箭头重新勾选「全选」就行

方法二:用QUERY函数自动同步筛选结果

如果需要在另一个工作表自动同步筛选结果,不用手动重复操作,可以用QUERY函数:

  1. 新建一个工作表(比如命名为「NOT OK记录」)
  2. 在新工作表的A1单元格输入以下公式(假设原始数据在「Sheet1」,状态列是D列,你可以根据表格实际情况调整列号):
=QUERY(Sheet1!A:Z, "SELECT * WHERE D = 'NOT OK'", 1)
  • 简单解释:Sheet1!A:Z是你的原始数据范围,SELECT *表示选中所有列,WHERE D = 'NOT OK'是筛选条件,最后的1表示第一行是表头
  • 之后只要原始数据更新,这个新工作表的筛选结果会自动同步更新

方法三:用宏实现一键筛选

如果需要一键触发筛选操作,可以用Google Apps Script创建宏:

  1. 打开表格,点击顶部「扩展程序」>「Apps Script」
  2. 删除默认的代码,粘贴以下代码(注意:如果状态列不是D列,把代码里的4改成对应列号,比如C列是3,E列是5):
function filterNotOK() {
  const activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const dataRange = activeSheet.getDataRange();
  
  // 先清除已有的筛选(避免冲突)
  const existingFilter = activeSheet.getFilter();
  if (existingFilter) {
    existingFilter.remove();
  }
  
  // 创建新筛选,只显示「NOT OK」的行
  const newFilter = dataRange.createFilter();
  const filterCriteria = SpreadsheetApp.newFilterCriteria()
    .whenTextEqualTo('NOT OK')
    .build();
  newFilter.setColumnFilterCriteria(4, filterCriteria);
}
  1. 点击左上角的保存按钮,给项目起个名字(比如「FilterNotOK」)
  2. 第一次运行需要授权,按照页面提示完成授权即可
  3. 之后你可以直接点击「扩展程序」>「宏」>「filterNotOK」,一键完成筛选

内容的提问来源于stack exchange,提问作者Sergio Daniel Hdz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 08:50:50