Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 循环不适用于列匹配_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript 循环不适用于列匹配

Javascript 循环不适用于列匹配,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我有一个循环,用于从底部匹配行值,如下所示:- var lastRow = s3.getLastRow(); var dataRange = s3.getRange(1, 1,lastRow).getValues(); for(var k=0;k<dataRange.length;k++) {doing something} match2.length是数组或范围中的行数 这个数组[[x,x,x],[y,y,y],[z,z,z]…]第一行有三个x,第二行有三个y,依此类推。所以在s3.g

我有一个循环,用于从底部匹配行值,如下所示:-

var lastRow = s3.getLastRow();
var dataRange = s3.getRange(1, 1,lastRow).getValues();
for(var k=0;k<dataRange.length;k++)
{doing something}

match2.length是数组或范围中的行数

这个数组
[[x,x,x],[y,y,y],[z,z,z]…]
第一行有三个x,第二行有三个y,依此类推。所以在
s3.getRange(1,1,lastColumn).getValues()中
lastColumn是该范围内的行数。从本质上讲,读取每一行然后一次获取一列更容易。或者您可以像矩阵一样转换数据,然后读取现在是行的列

寻找“巨无霸”的循环:

function myFunction() 
{
    var ss=SpreadsheetApp.getActive();
    var sh=ss.getActiveSheet();
    var rg=ss.getRange("A1:Z1");
    var vA=rg.getValues();
    for(var i=0;i<vA.length;i++)
    {
      for(j=0;j<vA[0].length;j++)
      {
        if(vA[i][j]=="Big Mac")
        {
          SpreadsheetApp.getUi().alert('Do not eat this burger as it has massive amounts of fat in it.');
          break;
        }
      }
    }
}
函数myFunction()
{
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=ss.getRange(“A1:Z1”);
var vA=rg.getValues();

对于(var i=0;i基本上我试图通过“A1:Z1”匹配数据"我的for循环应该是什么样子?@Mask有一个简单的循环。是指向电子表格的链接吗?你能告诉我哪里错了吗。列循环在第27行。仅仅因为你决定将列数放入行数所属的范围函数中,并不会改变函数的工作方式。如果你想搜索列,那么y你可能会考虑转置数据。看一下,转置数据和列变成行。
getRange(row, column, numRows)  Range   Returns the range with the top left cell at the given coordinates, and with the given number of rows.
function myFunction() 
{
    var ss=SpreadsheetApp.getActive();
    var sh=ss.getActiveSheet();
    var rg=ss.getRange("A1:Z1");
    var vA=rg.getValues();
    for(var i=0;i<vA.length;i++)
    {
      for(j=0;j<vA[0].length;j++)
      {
        if(vA[i][j]=="Big Mac")
        {
          SpreadsheetApp.getUi().alert('Do not eat this burger as it has massive amounts of fat in it.');
          break;
        }
      }
    }
}