具有单元格值名称的重复工作表

时间:2015-12-06 21:06:40

标签: google-sheets google-spreadsheet-api

我想知道是否有办法复制我正在处理的工作表,并根据原始工作表中的单元格值为新的复制工作表分配名称?

现在我只是使用脚本/按钮来清除单元格值的内容以启动新的库存订单(见下文)

function newSalesOrder() {
    var activeSheet = SpreadsheetApp.getActive();
    var ranges = ["StockOrder!B4", "StockOrder!E8", "StockOrder!D9","StockOrder!A12:B41"];
    for (var i = 0; i < ranges.length; i++) {
        activeSheet.getRange(ranges[i]).clearContent();
    }
}

所以我想添加复制StockOrder的功能! sheet,例如,将其重命名为Cell C4中的Purchase Order Number值。

1 个答案:

答案 0 :(得分:0)

如果我理解你想要达到的目标,你需要做的就是:

  • 将给定单元格的内容保存为字符串变量

这个有点棘手,Google表格中的层次结构是:SpreadSheet:Sheet:Range:Cell。那么你需要做些什么来获得Cell C4的价值:

  var ss = SpreadsheetApp.openById('Insert ID here');
  var name = ss.getName();

  var sheet = ss.getSheetByName('Insert Sheet Name Here');
  var range = sheet.getRange(3,4); 
  var newSheetName = range.getValue();

当然,您不需要使用openById或getSheetByName方法。你可以使用getActiveSheet()或任何你喜欢的东西。

  • 创建一个新表格,其标题是已保存的字符串变量

    var newSpreadSheet = SpreadsheetApp.create(newSheetName);

希望这会有所帮助:)。