Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.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 Script_Google Sheets - Fatal编程技术网

Google apps script 脚本可以工作,但只能在一个电子表格上运行

Google apps script 脚本可以工作,但只能在一个电子表格上运行,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我的剧本很好用,在我的第一页。但它不适用于我的工作簿中的其他工作表,即使Logger.log(sheet.getName())成功获取了当前正在编辑的工作表的名称。这是一个非常简单的问题,我只是不明白为什么它只适用于我的一张床单 function onEdit (e) { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getActiveSheet() Logger.log(shee

我的剧本很好用,在我的第一页。但它不适用于我的工作簿中的其他工作表,即使
Logger.log(sheet.getName())
成功获取了当前正在编辑的工作表的名称。这是一个非常简单的问题,我只是不明白为什么它只适用于我的一张床单

function onEdit (e) {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var sheet = ss.getActiveSheet()
      Logger.log(sheet.getName())
      if (e.range.getA1Notation() === 'C19' && e.value == 'TRUE') {
        sheet.getRange('K2:K89').setNumberFormat("0.00oz")
      }
        else if (e.range.getA1Notation() === 'C19' && e.value == 'FALSE'){
          sheet.getRange('K2:K89').setNumberFormat("0.00g")
        }

“装船选择器”中的C19值为真/假

在“装船选择器副本2.0”中,C19值为1/0

在if循环的脚本中,您有C19=='FALSE'/'TRUE'

这就是问题所在。只需在“装船选择器副本2.0”中的单元格C19处重新创建一个新的勾选框,它将C19值从1/0重置为真/假。(不要忘记重新加入电子表格,或者只是在工作表之间切换,以便代码开始工作。)


这也是onEdit()用于第一张工作表而不是第二张工作表的原因。

在“Loadout Picker”中,C19值为真/假

在“装船选择器副本2.0”中,C19值为1/0

在if循环的脚本中,您有C19=='FALSE'/'TRUE'

这就是问题所在。只需在“装船选择器副本2.0”中的单元格C19处重新创建一个新的勾选框,它将C19值从1/0重置为真/假。(不要忘记重新加入电子表格,或者只是在工作表之间切换,以便代码开始工作。)


这也是onEdit()在第一张工作表上工作而不是第二张工作表的原因。

下面的回答是否解决了您的问题?看起来有道理。实际上,我没有意识到,当你创建一个复选框时,它会给出
是/否
真/假
1/0
等选项。你必须记住编程时选择的选项!我想知道1/0是否可以被视为布尔值?他是这样做的,我想我在那里被搞糊涂了。谢谢你的帮助,非常感谢。我在这该死的东西上花了这么长时间!
w2lf
下面的回复是否解决了您的问题?看起来有道理。实际上,我没有意识到,当你创建一个复选框时,它会给出
是/否
真/假
1/0
等选项。你必须记住编程时选择的选项!我想知道1/0是否可以被视为布尔值?他是这样做的,我想我在那里被搞糊涂了。谢谢你的帮助,非常感谢。我在这该死的东西上花了这么长时间!嘿我真蠢。我也花了很长时间。我有这个电子表格的多个版本,在那里我尝试了不同的实现格式列的方法。谢谢你指出这一点。我很高兴这有帮助。起初,我认为代码也有问题。所以我复制了一份电子表格,组织了一点你的自定义函数,添加了缺失的部分;把括号移了一点{},又加了几个记录器,看起来不错,然后我检查了C19值,注意到了1/0。嘿。。。我真蠢。我也花了很长时间。我有这个电子表格的多个版本,在那里我尝试了不同的实现格式列的方法。谢谢你指出这一点。我很高兴这有帮助。起初,我认为代码也有问题。所以我复制了一份电子表格,组织了一点你的自定义函数,添加了缺失的部分;把括号移了一点{},又加了几个记录器,看起来没问题,然后我检查了C19值,注意到了1/0。