Google apps script GoogleSheet脚本移动到与单元格值同名的工作表
我有一张6栏的纸。第1行是标题,每个工作表都有相同的标题和列 我已经尝试了一些类似的代码,我在网上找到了这些代码并进行了编辑,但是可以让它们正确地用于多张图纸Google apps script GoogleSheet脚本移动到与单元格值同名的工作表,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我有一张6栏的纸。第1行是标题,每个工作表都有相同的标题和列 我已经尝试了一些类似的代码,我在网上找到了这些代码并进行了编辑,但是可以让它们正确地用于多张图纸 function copyrange() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName('Source'); var testrange = sheet.getRange('F:F'); var testva
function copyrange() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Source');
var testrange = sheet.getRange('F:F');
var testvalue = (testrange.getValues());
var csh = ss.getSheetByName('target');
var data = [];
var j =[];
for (i=0; i<testvalue.length;i++) {
if ( testvalue[i] == 'Completed') {
data.push.apply(data,sheet.getRange(i+1,1,1,25).getValues());
//Copy matched ROW numbers to j
j.push(i);
}
}
csh.getRange(csh.getLastRow()+1,1,data.length,data[0].length).setValues(data);
for (i=0;i<j.length;i++){
var k = j[i]+1;
sheet.deleteRow(k);
if (!(i == j.length-1)) {
j[i+1] = j[i+1]-i-1;
}
}
函数copyrange(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sheet=ss.getSheetByName('Source');
var testrange=sheet.getRange('F:F');
var testvalue=(testrange.getValues());
var csh=ss.getSheetByName('target');
var数据=[];
var j=[];
对于(i=0;i在收集符合条件的数据时删除行
function moveRows() {
var ss=SpreadsheetApp.getActive();
var sheet=ss.getSheetByName('Source');
var vA=sheet.getRange(1,1,sheet.getLastRow(),sheet.getLastColumn()).getValues();
var csh=ss.getSheetByName('target');
var d=0;//deleted row counter
var data=[];
for(var i=0;i<vA.length;i++) {
if (vA[i][5]=='Completed') {
data.push(vA[i]);
sheet.deleteRow(i+1-d++);//increment deleted row counter as you delete rows
}
}
csh.getRange(csh.getLastRow()+1,1,data.length,data[0].length).setValues(data);
}
函数moveRows(){
var ss=SpreadsheetApp.getActive();
var sheet=ss.getSheetByName('Source');
var vA=sheet.getRange(1,1,sheet.getLastRow(),sheet.getLastColumn()).getValues();
var csh=ss.getSheetByName('target');
var d=0;//已删除行计数器
var数据=[];
对于(var i=0;iif(testvalue[i]='Completed')
应该是if(testvalue[i][0]='Completed')
而这个var testrange=sheet.getRange('F:F');
最好是这个var testrange=sheet.getRange(1,6,sheet.getLastRow(),1)
这太棒了,谢谢你,我还有第二个问题,我正在尝试添加9个列表选项,我尝试在代码中添加更多变量,但我似乎可以让它工作,或者让它阅读第6列,然后移到列出的表中什么是列表选项?它们只是列表1、列表2等。我仍然不明白。没有提到请回答您的问题。它们是列、行、表吗?很抱歉造成混淆。我感谢您的帮助。我将在最后一张表中使用的值,而不是“完成”是“列表1”,我必须将我的行排序到最多9张表中,所有这些表都命名为“列表1”“列表2”,等等。在F列中,它们是下拉列表,我将选择它们,并且该行将移动到相应的位置床单。我希望澄清。非常感谢