When searching for values in a table I am currently running a check on specific cells with the following code:for (var i = 11; i < (lastrow+1); i++) {    var equip = sheet.getRange(i, 33).getValue();    var equip_name = sheet.getRange(i, 34).getValue();    var mech_date = sheet.getRange(i, 39).getValue();    var elec_date = sheet.getRange(i, 42).getValue();    if (mech_date && elec_date == '') {      output_mech_only.push([equip, equip_name, mech_date]);    } else {      if (mech_date == '' && elec_date) {        output_elec_only.push([equip, equip_name, elec_date]);      } else {        if (mech_date && elec_date) {          output_mech_elec.push([equip, equip_name, mech_date, elec_date]);        }      }    }  }As it stands the code above works just fine, and serves its purpose. However in the interest of simplifying things I have been looking into how to use .getValues() instead to streamline the code. I have looked through the documentation and am unclear as to how I would reference the needed columns. Is anyone able to clarify the usage of .getValues() in this particular instance?
Usage of GetValues
google spreadsheets;google apps script
This is how it could look like with getValues: Each call to getRange(...).getValues() gets a double array of values in the rectangular block determined by the arguments of getRange: top row, leftmost column, number of rows, number of columns. When accessing individual values, use two indices [i][j] keeping in mind that they begin with 0s. That is, array[0][0] will be the value in the upper left corner of the range. Since two of the columns were consecutive, they are grabbed together into equip_array; the other two are grabbed separately. It would also be reasonable to get all of the columns at once, in an array spanning 10 columns from 33th to 42nd. But I think the code is easier to maintain (in case of spreadsheet structure changes) if non-consecutive columns are dealt with separately. var equip_array = sheet.getRange(11, 33, lastRow - 10, 2).getValues();var mech_date_array = sheet.getRange(11, 39, lastRow - 10, 1).getValues();var elec_date_array = sheet.getRange(11, 42, lastRow - 10, 1).getValues();for (i = 0; i < equip_array.length; i++) {    var equip = equip_array[i][0];    var equip_name = equip_array[i][1];    var mech_date = mech_date_array[i][0];    var elec_date = elec_date_array[i][0];    // the rest as in your code