Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Adding arguments to a function in the onOpen entries object

Is there are a way I can add arguments to a function that will be added to the Script Center Menu on a Google Spreadsheet document? This is the normal onOpen method.

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Summary",
    functionName : "myOnOpen"
  }
];
  sheet.addMenu("Script Center Menu", entries);
};

I was wondering if there is something similar to the following.

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Summary",
    functionName : "myOnOpen",
    arguments : [value: "Some value"]
  }
  ];
  sheet.addMenu("Script Center Menu", entries);
};

Thanks!

like image 378
adifire Avatar asked Jul 07 '13 17:07

adifire


1 Answers

I don't think that is possible exactly as you have written, but you can do it in the following way:

function onOpen() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var entries = [{
    name : "Summary",
    functionName : "myParameterisedOpen",
  }
  ];
  sheet.addMenu("Script Center Menu", entries);
};

function myParameterisedOpen() {
  myOnOpen("Some value");
};
like image 82
Mad G Avatar answered Sep 21 '22 09:09

Mad G