![](/img/trans.png)
[英]Need to Query Google Sheet for specific data from Google Apps Script
[英]Google Apps Script Copying Specific Range from any tab to a Master Sheet
所以本质上,我想创建一个脚本,从一张纸上的特定范围内获取数据,并将其推送到主纸上,或者我称之为“永久”。 每天都会创建新选项卡,并且在出现提示时,这些新选项卡上的指定范围也需要推送。 当我尝试使用该脚本时,每个人都可以工作,除了在“永久”页面上粘贴数据时,这些行分开粘贴了许多行,而不是粘贴在最后一个空行中。 我对编码非常陌生,并且肯定需要一些关于我搞砸的指针。
function onOpen(e) {
var ui = SpreadsheetApp.getUi();
// Or DocumentApp or FormApp.
ui.createMenu('Push to Perpetual')
.addItem('Push to Perpetual', 'Macro')
.addToUi();
}
function Macro() {
var s = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Extraction Log Perpetual")
var s2 = SpreadsheetApp.getActiveSheet()
var a=s.getLastRow()+1
s2.getRange(3, 21, 5, 13).copyTo(s.getRange(a,1),SpreadsheetApp.CopyPasteType.PASTE_VALUES, false)
};
如果数据在实际行中粘贴了许多行,则意味着该工作表中还有其他内容导致 getLastRow() 跳到最后。 您可以做的是从 A 列获取最后一行。
var a=s.getRange("A:A").getValues().filter(function(item){return item != ""}).length+1;
扩展您从 A 列获取所有值,然后过滤掉没有任何值的单元格。 然后得到数组的长度,加1这样就可以得到下一行了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.