Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 基于变量运行脚本的Google Apps脚本_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 基于变量运行脚本的Google Apps脚本

Google apps script 基于变量运行脚本的Google Apps脚本,google-apps-script,google-sheets,Google Apps Script,Google Sheets,好的,我已经做了一段时间的编码工作,有机会做了很多事情 我想找到一种更优雅的方法,就是根据变量的值运行脚本 目前我正在这样做 if (ScriptName == 'overnightRun' ) { overnightRun(); } if (ScriptName == 'resetAnalysisSheets' ) { resetAnalysisSheets(); } if (ScriptName == 'resetActiv

好的,我已经做了一段时间的编码工作,有机会做了很多事情

我想找到一种更优雅的方法,就是根据变量的值运行脚本

目前我正在这样做

    if (ScriptName == 'overnightRun' ) {
      overnightRun();
    } 
    if (ScriptName == 'resetAnalysisSheets' ) {
      resetAnalysisSheets();
    } 
    if (ScriptName == 'resetActiveSheetFormulae' ) {
      resetActiveSheetFormulae();
    } 
    if (ScriptName == 'saveRemainingContractSheets' ) {
      saveRemainingContractSheets();
    } 
    if (ScriptName == 'saveAllContractSheets' ) {
      saveAllContractSheets();
    } 
    if (ScriptName == 'saveCurrentContractSheet' ) {
      saveCurrentContractSheet();
    } 
    if (ScriptName == 'clearDataSheets' ) {
      clearDataSheets();
    } 
    run.script(ScriptName);
肯定有更好的办法。更像这样

    if (ScriptName == 'overnightRun' ) {
      overnightRun();
    } 
    if (ScriptName == 'resetAnalysisSheets' ) {
      resetAnalysisSheets();
    } 
    if (ScriptName == 'resetActiveSheetFormulae' ) {
      resetActiveSheetFormulae();
    } 
    if (ScriptName == 'saveRemainingContractSheets' ) {
      saveRemainingContractSheets();
    } 
    if (ScriptName == 'saveAllContractSheets' ) {
      saveAllContractSheets();
    } 
    if (ScriptName == 'saveCurrentContractSheet' ) {
      saveCurrentContractSheet();
    } 
    if (ScriptName == 'clearDataSheets' ) {
      clearDataSheets();
    } 
    run.script(ScriptName);
有人有什么想法吗?谢谢你的阅读

您可以尝试以下方法:

function testFunction() {
  var ScriptName = "Alibaba";
  var p = "Open sesame!"
  this[ScriptName](p);
}

function Alibaba(p) {
  Logger.log(p);
}
如果不传递任何内容,请将参数
p
保留为空。

您可以尝试以下操作:

function testFunction() {
  var ScriptName = "Alibaba";
  var p = "Open sesame!"
  this[ScriptName](p);
}

function Alibaba(p) {
  Logger.log(p);
}

如果不需要传递任何内容,请将参数
p
留空。

Super!你可能想谢谢,我刚做完。解决堆栈溢出问题;-)超级的!你可能想谢谢,我刚做完。解决堆栈溢出问题;-)