samedi 27 juillet 2019

How to alter this script to add another condition

I have this piece of code which has been working great for me, however, I need a minor alteration to it and don't know how to proceed.

I would like for 'Multiple Use' to be added as another condition, alongside 'Yes' for the onEdit() to work.

function numberToLetter(number){
  // converts the column number to a letter
  var temp = "";
  var letter = "";
  while (number > 0){
    temp = (number - 1) % 26;
    letter = String.fromCharCode(temp + 65) + letter;
    number = (number - temp - 1) / 26;
  }
  return letter;
}

function obtainFirstBlankRow() {  

  var sheet = SpreadsheetApp.getActive().getSheetByName('Aug2019');
  // search for first blank row
  var col = sheet.getRange('A:A');
  var vals = col.getValues();
  var count = 0;

  while (vals[count][0] != "") {
    count++;
  }
  return count + 1;
}

function onEdit(e) {
  var ss = SpreadsheetApp.getActiveSheet();

  if (ss.getName() == 'ProspectiveSites' && e.range.getColumn() == 26) {

    if (e.range.getValue() != 'Yes'){
      Logger.log('test');
      return;
    }

    var sourceSheet = SpreadsheetApp.getActive().getSheetByName('ProspectiveSites');
    var targetSheet = SpreadsheetApp.getActive().getSheetByName('Aug2019');

    //Logger.log('O' + e.getRow() + ':O' + e.getRow());
    Logger.log(e);
    Logger.log(e.range.getValue());
    var cell15 = sourceSheet.getRange('O' + e.range.getRow() + ':O' + e.range.getRow()).getValue();
    var cell24 = sourceSheet.getRange('X' + e.range.getRow() + ':X' + e.range.getRow()).getValue();
    Logger.log(cell15);
    Logger.log(cell24);

    var row = obtainFirstBlankRow();    
    targetSheet.getRange(row, 1).setValue(cell15);
    targetSheet.getRange(row, 2).setValue(cell24);
  }
}

Aucun commentaire:

Enregistrer un commentaire