以下是一个使用Apps Script的示例代码,用于根据指定列中的值将特定行归档为不同的工作表。
function archiveRowsBasedOnColumnValue() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sourceSheet = ss.getSheetByName("原始数据"); // 替换为你的源工作表名称
var targetSheet = ss.getSheetByName("归档数据"); // 替换为你的目标工作表名称
var columnToCheck = 1; // 替换为你要检查的列索引(从1开始)
var archiveValues = ["归档1", "归档2", "归档3"]; // 替换为你要归档的特定值
var data = sourceSheet.getDataRange().getValues();
var archiveData = [];
for (var i = 0; i < data.length; i++) {
var row = data[i];
var cellValue = row[columnToCheck - 1];
if (archiveValues.includes(cellValue)) {
archiveData.push(row);
sourceSheet.deleteRow(i + 1);
i--; // 删除行后需要减少索引以保持正确的循环
}
}
var targetRange = targetSheet.getRange(targetSheet.getLastRow() + 1, 1, archiveData.length, archiveData[0].length);
targetRange.setValues(archiveData);
}
这段代码做了以下事情:
请根据你的实际需求修改代码中的工作表名称、列索引和特定值。