我有一个包含模板的Google电子表格。现在,我将复制此选项卡以创建一个新选项卡。然后我必须根据它的周来调整开始日期。因为我每两周创建一次,所以我想知道是否有办法在左边计算标签数量。如果可以,那么我只需要查看模板上的开始日期,并根据每个标签代表2周的周数来添加日期。
如果这不可能,那么是否可以改为获取lat标签的名称并将其转换为日期?然后我可以在那个日期增加2周。我的标签名称基本上是日期(02-25-2018)。
答案 0 :(得分:1)
这应该这样做:
function createSheet() {
var ss=SpreadsheetApp.getActiveSpreadsheet()
var s=ss.getSheets()//get all the sheets
var len=s.length// how many sheets
var name=s[len-1].getSheetName()//get name of last sheet
var newSheet=new Date(name)//convert to date
var newdate = newSheet.setDate(newSheet.getDate()+14);//add 14 days to date
var twoWeekDate = Utilities.formatDate(new Date(newdate), "GMT+1", "MM/dd/yyyy")//set format
ss.insertSheet(twoWeekDate)//create new sheet
}
答案 1 :(得分:0)
我建议你更通用的解决方案。
这里是获取所有标签名称的功能:
function getAllTabsNames()
{
var file = SpreadsheetApp.getActive();
var sheets = file.getSheets();
var result = [];
sheets.forEach(function(sheet) { result.push(sheet.getName()); } );
return result;
}
用法:
=IF(A1,getAllTabsNames())
注意:
TRUE
中写下A1
,然后再将其更改为FALSE
和TRUE
。结果是数组:工作表名称列表。
接下来的步骤: