默认未绑定?

问题描述 投票:0回答:1

我一直在开发用于 Google 表格的脚本,现在无法创建绑定到容器/电子表格的脚本。无论是新创建的电子表格还是工作表中已有脚本的电子表格,保存图标都只会让我将脚本保存到我的驱动器中,这也妨碍了我访问/使用 SpreadsheetApp 服务的能力,而这对于我为工作编写的所有脚本。

我成功创建的最后一个脚本是将数据存档到另一张纸上,如下所示:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  var menu = ui.createMenu('Actions');
  menu.addItem('Clone - Archive Selected Rows', 'archiveSelectedRowsClone')
      .addItem('Veg - Archive Selected Rows', 'archiveSelectedRowsVeg')
      .addItem('Flower - Archive Selected Rows', 'archiveSelectedRowsFlower')
      .addItem('Mom - Archive Selected Rows', 'archiveSelectedRowsMom')
      .addToUi();
}

function archiveSelectedRowsClone() {
  archiveSelectedRows('Clone', 'Clone Archive');
}

function archiveSelectedRowsVeg() {
  archiveSelectedRows('Veg','Veg Archive');
}

function archiveSelectedRowsFlower() {
  archiveSelectedRows('Flower', 'Flower Archive');
}

function archiveSelectedRowsMom() {
  archiveSelectedRows('Mom Room/Z10', 'Mom Archive')
}

function archiveSelectedRows(sourceSheetName, destinationSheetName) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sourceSheet = ss.getSheetByName(sourceSheetName);
  var destinationSheet = ss.getSheetByName(destinationSheetName); 1 

  // Get the selected range
  var selectedRange = sourceSheet.getActiveRange();

  // Get the last row of the destination sheet
  var lastRow = destinationSheet.getLastRow();

  // Copy the formatting to the destination sheet
  selectedRange.copyTo(destinationSheet.getRange(lastRow + 1, 1), {contentsOnly: false});

  // Copy the values to the destination sheet, using display values and batch setting
  var targetRange = destinationSheet.getRange(lastRow + 1, 1, selectedRange.getNumRows(), selectedRange.getNumColumns());
  var values = selectedRange.getDisplayValues();
  targetRange.setValues(values);
google-sheets google-apps-script google-workspace
1个回答
0
投票

要创建绑定脚本,您首先必须打开文件、文档、表单、演示文稿或电子表格。

在 Google 文档、Google 表格和 Google 幻灯片上,单击 扩展,然后单击 Apps 脚本。如果该文件还没有绑定项目,这将创建一个新的绑定项目并将其打开。如果文件已经有绑定的项目,这将打开绑定的项目。

要在同一文件中创建另一个绑定项目,请复制现有绑定项目之一。

您也可以使用 Google Apps Script API 或 CLASP 来实现上述目的。

© www.soinside.com 2019 - 2024. All rights reserved.