根据模板从选定的行生成新的电子表格 [英] Generate new spreadsheet from a selected row based on template

查看:105
本文介绍了根据模板从选定的行生成新的电子表格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用此脚本,我可以从电子表格的所有行中生成新的标签:

With this script I can generate new tab from all the row in a spreadsheet:

function onOpen() {
    SpreadsheetApp.getUi().createMenu('Tab Orari')
        .addItem('Genera Tab Orari', 'createTabs')
        .addToUi()}

function createTabs() {
  var ss = SpreadsheetApp.getActive();
  var templateSheet = ss.getSheetByName('xxx');
  ss.getSheetByName('Generale').getRange('I2:I').getValues().filter(String)
  .forEach(function (sn) {
    if (!ss.getSheetByName(sn[0])) {
      ss.insertSheet(sn[0], ss.getSheets().length, {template: templateSheet});
    }
  });
}

仅当我选择特定的行并将此Spreadsheet重命名为单元格中的值时,我才会基于模板标签(在本例中为"xxx"标签)生成新的电子表格(而不是标签)在第一列中对应的行.

I would generate a new spreadsheet (and so not a tab), based on a template tab (in this case, the tab "xxx") only when I select a specific row and rename this Spreadsheet as the value in the cell in column I for that corresponding row.

该怎么做?

推荐答案

代替insertSheet使用 copyTo(spreadsheet)

可以通过获取所选单元格的行号并在该行的第9列("I")中找到条目来获得电子表格名称.

Instead of insertSheet use copyTo(spreadsheet)

The spreadsheet name can be obtained by obtaining the row number of the selected cell and finding the entry in column 9 ("I") of this row.

示例:

function onOpen() {
  SpreadsheetApp.getUi().createMenu('Tab Orari')
  .addItem('Genera spreadsheet', 'createSpreadsheet')
  .addToUi()}

function createSpreadsheet() {
  var ss = SpreadsheetApp.getActive();
  // the following line means that the function will search for the spreadsheet name in the active sheet, no matter which one it is
  var sheet = ss.getActiveSheet();
  //the selected row
  var row = sheet.getActiveCell().getRow();
  // column 9 corresponds to "I"
  var name = sheet.getRange(row, 9).getValue();
  var templateSheet = ss.getSheetByName('xxx');
  var newSpreadsheet = SpreadsheetApp.create(name);
  templateSheet.copyTo(newSpreadsheet);
}

这篇关于根据模板从选定的行生成新的电子表格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆