0

我有一个工作簿,每个月有 13 张纸和一张空白纸。每个工作表的格式都相同。我想将同一列中包含“过期”一词的每一行复制到最后一张表,以提供所有过期检查的主列表。我已经阅读了 3 篇关于类似问题的帖子,但我无法掌握每一行代码的功能足以满足我的需要。如果他们能帮助我实施这个解决方案,我愿意通过贝宝给小费。我是柴油机械师而不是程序员哈哈,我的老板只是认为我可以做任何事情。

逾期一词将始终位于所有 12 个工作表的“I”行(每个月 1 个)

如果有帮助,我也可以分享文档。

4

1 回答 1

0

它可能看起来像这样......

function moveRows() {
  var values = SpreadsheetApp.getActiveSpreadsheet()
  .getSheetByName('Sheet1').getRange('A2:I').getValues();
  var row, len, data = [];

  for (row = 0, len = values.length; row < len; row++)
    if (values[row][8] == 'Overdue') 
      data.push([values[row]]);

  var dest = SpreadsheetApp.openById('YOUR_SS_ID').getSheetByName('Sheet1');
  var lastRow = dest.getLastRow();
  dest.getRange('A1').offset(lastRow, 0, data.length, data[0].length).setValues(data);
}

它不会从源工作表中删除任何行(只是 1 个工作表而不是 13 个,就像您需要它设置的那样),只是复制它们。

于 2013-06-18T04:49:50.917 回答