![](/img/trans.png)
[英]How to close all tabs except the active one on demand with content script in chrome extension
[英]How to run this script in all tabs, except some tabs?
如果天数<= -4,我使用此代码根据列设置一些值
function SetValues(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var responses = ss.getSheetByName("tt");
var data = responses.getRange(1,1,responses.getLastRow(),responses.getLastColumn()).getValues();
data.forEach(function(row,i) {
var date = row [0];
var nombre = row [1];
var pidePor = row [2];
var fechaFin = row [3];
var dias = row [4];
if (dias <= -4){
var val = responses.getRange( i + 1, 2).getValue();
responses.getRange( i + 1, 2).setValue(val);
var val = responses.getRange( i + 1, 3).getValue();
responses.getRange( i + 1, 3).setValue(val);
var val = responses.getRange( i + 1, 4).getValue();
responses.getRange( i + 1, 4).setValue(val);
}
});
}
它在引用的选项卡中工作正常,但我需要的是能够在我的工作表上运行它,不包括一些选项卡
任何人都可以帮我,请问如何实现这一目标?
我一直在努力工作几个小时而没有运气
谢谢 !
您需要做的就是将它放在包装函数中
numberAllTheSheets(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
sheets = ss.getSheets();
for (i=0; i<sheets.length; i++){//Avoids sheets named "sheet one" and "sheet four"
if sheets[i].getName=="Sheet One") continue;
if sheets[i].getName=="Sheet Four") continue;
SetValues(sheets[i]);
}
然后将设置值修改为:
function SetValues(responses){
var data = responses.getRange(1,1,responses.getLastRow(),responses.getLastColumn()).getValues();
data.forEach(function(row,i) {
var date = row [0];
var nombre = row [1];
var pidePor = row [2];
var fechaFin = row [3];
var dias = row [4];
if (dias <= -4){
var val = responses.getRange( i + 1, 2).getValue();
responses.getRange( i + 1, 2).setValue(val);
var val = responses.getRange( i + 1, 3).getValue();
responses.getRange( i + 1, 3).setValue(val);
var val = responses.getRange( i + 1, 4).getValue();
responses.getRange( i + 1, 4).setValue(val);
}
});
}
}
}
尝试这个:
function runSetValuesExceptForSomeSheets(){
var ss=SpreadsheetApp.getActive();
var sheets=ss.getSheets();
var excluded=['Sheet1','Sheet4'];//add names of sheets that are excluded
for (i=0;i<sheets.length;i++) {
if(excluded.indexOf(sheets[i].getName())==-1) {
var sheet=sheets[i];
var data=sheet.getDataRange().getValues();
for(var j=0;j<data.length;j++) {
if(data[i][4]<=4) {
var valA=sheet.getRange(i + 1,2,1,3).getValues();//This makes no sense
sheet.getRange(i+1,2,1,3).setValues(valA);//This makes no sense
}
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.