Question

Je continue à obtenir cette erreur quand je tente de lancer ce script. Il a couru très bien pendant plusieurs jours. Il est dans une feuille de calcul Google Docs.

TypeError: Impossible d'appeler la méthode "getRange" de null. (Ligne 0)

ss = SpreadsheetApp.getActiveSpreadsheet();


function onOpen() {
 var ss = SpreadsheetApp.getActiveSpreadsheet();
  var menuEntries = [ {name: "New PO", functionName: "NewPO"}];
   ss.addMenu("New PO", menuEntries);
 }


function NewPO() {
  SpreadsheetApp.getActiveSheet().insertRowsBefore(1,6);


  // Adjust this range accordingly, these are the cells that will be
  // copied.  Format is getRange(startRow, startCol, numRows, numCols)
  ss.getSheetByName("PO Form").getRange(1, 1, 6, 8)
  .copyTo(SpreadsheetApp.getActiveSheet().getRange(1, 1, 6, 8));
   }


function onEdit(e) {
  var ss = e.source.getActiveSheet();
  var r = e.source.getActiveRange();
  // 1 is A, 2 is B, ... 8 is H
  if (r.getColumn() == 8 && r.getValue() == "x") {
    r.setValue(Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd"));
  }
}

Y at-il quelque chose que vous pouvez voir que causerait cette erreur?

Était-ce utile?

La solution

Avez-vous vérifié la valeur de retour de ss.getSheetByName("PO Form"). Il est null plus probable. Vous avez également un niveau namedss de classe variables et les variables méthode nommée ss ainsi. Ce genre de shadowing peut entraîner des problèmes si vous n'êtes pas très prudent.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top