如何根据 P 列中的值将行从一个 sheet 移动到另一行

How to move row from one sheet to another based on value in Column P

我有一个包含 header 的电子表格。在 P 列中,我有一列百分比。如果超过 150%,我想将整行移动到名为“组”的新工作表中。

我现在没有太多代码,因为我尝试了大约 5 种不同的方法,最后删除了我的工作。 :/

如果您有一些 AppScript 经验,这可能会有所帮助:

  1. 按百分比列降序排列范围;

  2. 查找百分比低于 150% 的第一行;

  3. 获取范围行 2 到该行减 1 的值;

  4. 删除第 2 行到该行减去 1;

  5. 将值设置为范围从 getLastRow() 开始的其他选项卡

如果您想将列中的信息复制到另一个跨页sheet,您可以试试这个:

function copyToSheet() {
  var sourceSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
  var rows = sourceSheet.getDataRange().getValues();
  var targetSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
  for(var i=0; i< rows.length; i++)
  {
    if(rows[i][2]>150)
    {
      targetSheet.appendRow(rows[i]);
    }
  }
}

脚本从源 sheet 获取信息,然后比较每一行的 C 列数据,如果值高于 150,则将整行复制到不同的 sheet .

这是我在 Sheet1 中的示例数据:

这是 运行 脚本后 Sheet2 中的结果:

您可以根据需要调整脚本。