Google apps script 根据GoogleScript更改大型工作表列表中的数据
你好 我尝试更改一个非常大的列表中的任何数据。对于此作业,我创建了以下脚本:Google apps script 根据GoogleScript更改大型工作表列表中的数据,google-apps-script,google-sheets,Google Apps Script,Google Sheets,你好 我尝试更改一个非常大的列表中的任何数据。对于此作业,我创建了以下脚本: 函数myProjLibreVersion(){ var ss=SpreadsheetApp.getActiveSpreadsheet(); var sheet=ss.getSheetByName(“BigList”); var lr=sheet.getLastRow(); var lc=sheet.getLastColumn(); 对于(var i=1;i表实际上并没有那么大。您需要使用var array=getVa
函数myProjLibreVersion(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sheet=ss.getSheetByName(“BigList”);
var lr=sheet.getLastRow();
var lc=sheet.getLastColumn();
对于(var i=1;i表实际上并没有那么大。您需要使用var array=getValues()
而不是getValue()
,然后遍历该数组
大概是这样的:
function myProjLibreVersion() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("BigList");
var data = ss.getDataRange().getValues();
var lr = data.length;
var lc = data[0].length;
for (var i = 0; i < lr; i++) {
if (data[i][3] == "ProjectLibre") {
Browser.msgBox("found a Value Row =" + i +"\\nColoumn = 4");
// sheet.getRange(i,4).activate(); // <-- I'm not sure what this for
}
}
Browser.msgBox("Jup");
}
函数myProjLibreVersion(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var sheet=ss.getSheetByName(“BigList”);
var data=ss.getDataRange().getValues();
var lr=data.length;
var lc=数据[0]。长度;
对于(变量i=0;i
function myProjLibreVersion() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sh = ss.getSheetByName("BigList");
const rg = sh.getRange(1,1,sh.getLastRow(),sh.getLastColumn());
const vs = rg.getValues();
let html = '';
vs.forEach((r,i)=>{
if(r[3] == "ProjectLibre") {
html += `<br>Row: ${i+1} Column: 4`;
}
});
if(html.length>0) {
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),"ProjectLibre")
}
}
函数myProjLibreVersion(){
const ss=SpreadsheetApp.getActiveSpreadsheet();
const sh=ss.getSheetByName(“BigList”);
const rg=sh.getRange(1,1,sh.getLastRow(),sh.getLastColumn());
const vs=rg.getValues();
让html='';
vs.forEach((r,i)=>{
if(r[3]=“ProjectLibre”){
html+=`
行:${i+1}列:4`;
}
});
如果(html.length>0){
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),“ProjectLibre”)
}
}
Cool。我要用getDataRange()更改部件getRange(1,1,sh.getLastRow(),sh.getLastColumn());
这有意义吗?你认为呢?我通常会这样做,但我怀疑他们有标题,如果他们这样做的话更容易更改,这可能会比我解释得更好。所有的数组方法都很值得学习。你真的可以用更少的编码来完成更多的工作。wowww-正是我需要的-非常感谢-我已经完成了研究了脚本,它看起来非常符合逻辑。但是,我被变量“r”(vs.forEach((r,I)=>{)卡住了。你能简单地给我解释一下“r”吗?