Google apps script 我需要一个脚本,删除一段时间后的行
是否可以制作一个脚本来删除电子表格中超过3周的响应 这是我尝试的脚本,但没有成功:Google apps script 我需要一个脚本,删除一段时间后的行,google-apps-script,google-sheets,Google Apps Script,Google Sheets,是否可以制作一个脚本来删除电子表格中超过3周的响应 这是我尝试的脚本,但没有成功: function duration() { var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getDataRange().getValues(); var newData = new Array(); var now = new Date(); newData.push([("Timestamp") , ("First Name") ,
function duration() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var newData = new Array();
var now = new Date();
newData.push([("Timestamp") , ("First Name") , ("Last Name") , ("Homeroom")]);
for(i in data){
var row = data[i]; if (now - row[0] < 300000) { newData.push(row);
}
}
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
函数持续时间(){
var sheet=SpreadsheetApp.getActiveSheet();
var data=sheet.getDataRange().getValues();
var newData=newarray();
var now=新日期();
推送([(“时间戳”)、(“名字”)、(“姓氏”)、(“家庭”)];
对于(数据中的i){
var row=data[i];if(现在-row[0]<300000){newData.push(row);
}
}
sheet.clearContents();
sheet.getRange(1,1,newData.length,newData[0].length).setValues(newData);
这很有效。我已经测试过了:
function duration() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var newData = new Array();
var now = new Date();
var threeWeeksAgo = new Date();
threeWeeksAgo.setDate(now.getDate() - 21);
var theLastRow = sheet.getLastRow();
newData.push(["Timestamp","First Name","Last Name","Homeroom"]);
for(var i=0;i<theLastRow;i++){
var row = data[i];
if (row[0] > threeWeeksAgo) {
newData.push(row);
};
};
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
};
函数持续时间(){
var sheet=SpreadsheetApp.getActiveSheet();
var data=sheet.getDataRange().getValues();
var newData=newarray();
var now=新日期();
var threeWeeksAgo=新日期();
setDate(现在是.getDate()-21);
var theLastRow=sheet.getLastRow();
推送([“时间戳”、“名字”、“姓氏”、“主页]);
对于(变量i=0;i三周前){
newData.push(行);
};
};
sheet.clearContents();
sheet.getRange(1,1,newData.length,newData[0].length).setValues(newData);
};
是的,您需要添加一个。然后你需要能够以某种方式过滤日期。做一个@SandyGood,我不知道怎么做。我没有制作脚本的经验,所以我只是想问问是否有人知道一个直接的答案,因为我对这类事情一无所知。我尝试使用一个有人放的程序,但它只是删除了表单上的所有响应,并将最上面一行更改为与响应应该是什么不同的内容。@Lev询问是否可能是错误的询问方式。有没有可能表明您只想要一个“是”或“否”的答案,而不是实际的解决方案。@SandyGood,这是我尝试过的但不起作用的脚本:function duration(){var sheet=SpreadsheetApp.getActiveSheet();var data=sheet.getDataRange().getValues();var newData=new Array();var now=newdate();newData.push(((“Timestamp”)),(“名字”),(“姓氏”),(“Homeroom”)];for(i in data){var row=data[i];if(now-row[0]<300000){newData.push(row);}}}sheet.clearContents();sheet.getRange(1,1,newData.length,newData[0].length).设置值(newData);复制并粘贴到此处时,我不确定如何保持格式。@Lev,这属于您的问题。单击