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 通过gsuite与多个工作表共享脚本的步骤是什么?_Google Apps Script_Google Sheets_Google Workspace - Fatal编程技术网

Google apps script 通过gsuite与多个工作表共享脚本的步骤是什么?

Google apps script 通过gsuite与多个工作表共享脚本的步骤是什么?,google-apps-script,google-sheets,google-workspace,Google Apps Script,Google Sheets,Google Workspace,我想在我的gsuite帐户中做什么: 将脚本与多个工作表(动态)关联,以便在一个文件中维护它们的公共代码。(例如,使用电子表格打开时显示的选项填充自定义菜单。) 我所尝试的: 使用处的脚本编辑器创建了脚本,但无法将脚本与工作表关联 通过脚本编辑器的“文件>打开”选项加载外部创建的脚本 使用工作表菜单中的脚本编辑器选项直接从工作表创建脚本,但未找到共享脚本的选项 发布脚本,但这似乎可以让普通公众访问脚本 我已经读过,但我发现文档不清楚,不确定如何继续 你的第一个想法很好: 使用处的脚本编辑器创建

我想在我的gsuite帐户中做什么

将脚本与多个工作表(动态)关联,以便在一个文件中维护它们的公共代码。(例如,使用电子表格打开时显示的选项填充自定义菜单。)

我所尝试的

  • 使用处的脚本编辑器创建了脚本,但无法将脚本与工作表关联
  • 通过脚本编辑器的“文件>打开”选项加载外部创建的脚本
  • 使用工作表菜单中的脚本编辑器选项直接从工作表创建脚本,但未找到共享脚本的选项
  • 发布脚本,但这似乎可以让普通公众访问脚本
  • 我已经读过,但我发现文档不清楚,不确定如何继续

    • 你的第一个想法很好:

      使用处的脚本编辑器创建了脚本,但无法将脚本与工作表关联

      从脚本中,可以使用多个图纸的ID编辑多个图纸。例如:

      // this function edits two sheets at once
      function editBothCells() {
      
        // assigns a variable to a spreadsheet
        var ss1 = SpreadsheetApp.openById("1CMLVG3Wnk4C-Ck0j7YKY_vgZZNj58mip_VRNUdrjpy8");
        var ss2 = SpreadsheetApp.openById("1kxC_0AwCwapVWG5grRNBLSHYhKpcVOHbrXTZdG9fOc4");
      
        // runs a function on both spreadsheets
        boldenA4(ss1,ss2);
      }
      
      // this function takes cell A4 and makes it bold for all arguments
      function boldenA4(spreadsheet1, spreadsheet2, and_so_on){
      
        for(var i = 0; i < arguments.length; i++){
          arguments[i].getSheets()[0]
          .getRange("A4")
          .setValue("hello stackoverflow") // could be any string 
          .setFontWeight("bold"); 
        }
      }
      
      //此函数一次编辑两张工作表
      函数editBothCells(){
      //将变量指定给电子表格
      var ss1=电子表格应用程序openById(“1CMLVG3Wnk4C-Ck0j7YKY_vgznJ58mip_VRNUdrjpy8”);
      var ss2=电子表格应用程序openById(“1kxC_0AWCWAPVWG5GRNBLSHYHKPCVOHBRXTZDG9FOC4”);
      //在两个电子表格上运行一个函数
      boldenA4(ss1、ss2);
      }
      //此函数接受单元格A4,并将所有参数都设置为粗体
      函数boldenA4(电子表格1、电子表格2和其他){
      for(var i=0;i
      以下是指向工作表和脚本的链接:

      • -请随意编辑
      • -请随意编辑
      • -请随意运行它

      Related:Related:Related:我不得不改变我的问题,因为这回答了我的问题,但我没有具体说明我的意思!:)我希望创建一个菜单与共同的功能,这意味着在一个特定的文件夹打开任何工作表操作。