I would like to do the following with Google Apps Script:
Here you can find part of my code:
const rows = sheet.getDataRange().getValues();
var googleDocTemplate = DriveApp.getFileById('doc ID')
rows.forEach(function(row,index) {
if (index === 0) return;
if (row[0]) return;
if (row[3]==='Toyota') return;
if (row[3]==='Ford') return;
if (row[3]==='Dodge') return;
if (row[3]==='Changan') return;
if (row[15]==='' && row[22]==='') return;
//Grand i10 M/T GL, GLS or A/T GLS
if ((row[4].equals('Grand i10 M/T GL') || row[4].equals('Grand i10 M/T GLS') || row[4].equals('Grand i10 A/T GLS')) && row[9]===0 && row[6]==='Electric Blue'){
googleDocTemplate = DriveApp.getFileById('doc ID');
}
else if ((row[4].includes('Grand i10 M/T GL') || row[4].includes('Grand i10 M/T GLS') || row[4].includes('Grand i10 A/T GLS')) && row[9]===0 && row[6]==='Black'){
googleDocTemplate = DriveApp.getFileById('doc ID');
}
else {
SpreadsheetApp.getUi().alert("Hyundai model is wrong")
return
}
Basically the code search through rows in the Google Sheets like this
and then compares the string contained in the cell with the reference string (e.g 'Grand i10 M/T GL'), but in this particular case, the conditional jumps straight to the else showing the alert "Hyundai model is wrong".
Any help would be appreciated. Thanks!
Try this. I didn't know how you handle Hyundai
function test() {
try {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet4"); // substitute your sheet here
var rows = sheet.getDataRange().getValues();
var i = 0;
// i=1 skip first row?
for( i=1; i<rows.length; i++ ) {
// note index 3 is column D
if( ( ( rows[i][3] === "Grand i10 M/T GL" )
|| ( rows[i][3] === "Grand i10 M/T GLS" )
|| ( rows[i][3] === "Grand i10 A/T GLS" ) )
&& ( rows[i][8] === 0 )
&& ( ( row[i][5] === "Electric Blue" )
|| ( row[i][5] === "Black" ) ) ) {
googleDocTemplate = DriveApp.getFileById('doc ID');
break; // asuming there is only one row with these attributes
}
else if( rows[i][2] === "Hyundai" ) {
SpreadsheetApp.getUi().alert("Hyundai model is wrong");
return;
}
}
Logger.log("row = "+(i+1));
}
catch(err) {
Logger.log(err);
}
}