我是脚本的新手,你可以看到,我需要一个脚本,我可以在桌面上获取数据(Sheet 1!A1:E7 - 每小时更新一次)并复制它(如TEXT)到新表(表2)。我需要Sheet 2生成新的行/列,每小时(24小时),持续7天。我搜索了整个网络以找到这个,但无济于事。
希望找到答案。
答案 0 :(得分:0)
互联网没有惹恼任何东西学习如何编写脚本,但会分享我带给你的路线。
Codeacademy. Great for learning the basic priciples of Javascript
一旦你完成了,下一站就应该在这里。
这应该为您提供构建自己脚本的良好起点。 我也会保留这个链接,以获得很好的反思,W3Schools
Has javascript references and tutorials
你可以立刻上路,一旦你碰到砖墙,或者代码表现不正常。有很好的旧HERE,StackOverflow可供访问。
我不明白你的问题“生成新列”中的意思 因为如果源表始终是A1:E7,那么表2中不需要额外的列。只导入额外的行作为新数据。
这是您问题的快速解决方案。
function tableCopy() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sourceSheet = ss.getSheetByName("Sheet1");
var targetSheet = ss.getSheetByName("Sheet2");
var values = sourceSheet.getRange("A1:E7").getValues();
var valuesLength = values.length;
if (!valuesLength) return;
var lastRow = targetSheet.getLastRow();
var requiredRows = lastRow + valuesLength - targetSheet.getMaxRows();
if (requiredRows > 0) targetSheet.insertRowsAfter(lastRow, requiredRows);
targetSheet.getRange(lastRow + 1, 1, valuesLength, values[0].length).setValues(values);
}
要使其作为计时器工作,您必须为该功能添加时间驱动的触发器。在你需要的时候触发它。
我希望这会有所帮助