我目前有代码在单个Google表格中搜索indexOf数字,并将匹配的行号分配给变量。这是一个例子:
for(i=0;i<values.length; i++){
itemvalue = values[i][column1-1];
codevalue = values[i][column2-1];
if(itemvalue.indexOf("5019")>-1){
row = i+1; itemcode = 5019; indexes.push(i+1)
}
}
不幸的是,工作表包含多行包含&#34; 5019&#34;的字符串。因此,我正在寻找indexOf继续搜索的方法,并为每个匹配的行号分配一个新变量。所以如果&#34; 5019&#34;在第50,51行和第54行找到,然后第1行,第2行将分配给每个行号。
感谢您的任何帮助,如果我错过了提供任何信息,请告诉我。
编辑:感谢daniel提供的链接,我能够将所有匹配的行号放入数组中。但是我仍然在试图弄清楚如何为数组中的每个值分配一个变量,这样我就可以得到驻留在行中的单元格的值并将它们加在一起。
答案 0 :(得分:0)
我找到了我寻求的解决方案。这是我做的:
for(i=0;i<values.length; i++){
itemvalue = values[i][column1-1];
codevalue = values[i][column2-1];
if(itemvalue.indexOf("5019")>-1){
row = i+1; itemcode = 5019; indexes.push(i+1)
}
for(j=k=0;j<indexes.length; j++){
rownumb.push(ss.getRange(indexes[j],qtycol).getValue()); //Get value of the cells using the row numbers from the indexes array
}
for(l=0;l<rownumb.length; l++){
rowtotal += rownumb[l]; //Adds all the values together
}
}
所以我做了一个for循环来获取索引数组中的行中的单元格值,然后创建一个名为“rownumb”的新数组来保存单元格值。然后我创建了另一个for循环来将数组rownumb中的所有值一起添加到我想要的内容中。