我想实现一个游戏的交付清单,人们可以在其中使用Google表单将自己注册为会员列表。当他们交付时,例如Ironore,它将通过表格插入到工作清单中。
当我然后想要将其从列表中删除时,我想通过Datavalidation从成员列表中进行搜索。因此,我选择“ Jason_Matters”作为示例,它应删除“ Jason_Matters”中的所有行。我使用的脚本如下所示。但我不知道如何使用datavalidation中的信息:
function readRows_JS() {
var sheet =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Lieferungen Team
Matters");
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var values = rows.getValues();
var Sheet2 =
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Mitarbeiter Liste');
var validate1 = Sheet2.getRange("H12").getDataValidation();
var ui = SpreadsheetApp.getUi();
var response = ui.alert('Sind Sie sich sicher?', ui.ButtonSet.YES_NO);
if (response == ui.Button.YES) {
var rowsDeleted = 0;
for (var i = 0; i <= numRows - 1; i++) {
var row = values[i];
if (row[1] == "validate1") {
sheet.deleteRow((parseInt(i)+1) - rowsDeleted);
rowsDeleted++;
}
}
}
};
我必须为“ validate1”插入什么?
答案 0 :(得分:0)
我的猜测是您想做这样的事情:
function readRows_JS() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName("Lieferungen Team Matters");
var rg=sh.getDataRange();
var vA=rg.getValues();
var sh2=ss.getSheetByName('Mitarbeiter Liste');
var selection=sh2.getRange("H12").getValue();
var ui=SpreadsheetApp.getUi();
var response=ui.alert('Sind Sie sich sicher?', ui.ButtonSet.YES_NO);
if (response==ui.Button.YES) {
var d=0;
for (var i=0;i<vA.length; i++) {
if (vA[i][1]==selection) {
sh.deleteRow(i+1-d++);
}
}
}
}