google-apps-script - 如何让脚本仅复制最后一行值
问题描述
我有以下脚本(从论坛复制)将最后一行从表单响应表(事件)复制到目标表(sheet11)。触发器是:在表单提交上。
function CopyLastrowForm() {
var ss = SpreadsheetApp.getActiveSpreadsheet ();
var sourceSheet = ss.getSheetByName("Event");
var source = sourceSheet.getRange("A:AC" + sourceSheet.getLastRow());
var destSheet = ss.getSheetByName("Sheet11");
var lastRow = destSheet.getLastRow();
if (lastRow) destSheet.insertRowAfter(lastRow);
source.copyTo(destSheet.getRange(lastRow + 1,1), {contentsOnly: true});
}
当目标工作表行为空白时效果很好,但我有(在目标工作表 AD 的所有行中)一些数组公式!
所以脚本运行但结果没有出现(我假设因为它在 sheet11 上找不到 lastrow)。
应该如何对其进行修改,以便从事件的最后一行复制 A:AC(仅值)!到 Sheet11,其中 A:AC 为空白,但 Cols AD 以后已经有公式
解决方案
你可以使用这样的东西来为你想要的任何列获得一个列高。
function getColumnHeight(col){
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getRange(1,col,sh.getLastRow(),1);
var vA=rg.getValues();
while(vA[vA.length-1][0].length==0){
vA.splice(vA.length-1,1);
}
return vA.length;
}
推荐阅读
- apache-kafka - 将 Kafka 升级到 2.5.0 后,不推荐使用 ZkUtils
- c# - Serilog,文件接收器,更改输出模板
- angular - NullInjectorError:没有提供 ConfigService (HttpClient)
- javascript - React 不会渲染从异步函数返回的东西
- git - git不会将一个文件同步到我的macOS本地,因为还有另一个大写文件名,我该怎么办?
- javascript - 尝试在本机反应中更改日历上的标记日期会导致语法错误
- flutter - Flutter - 如何放置动态图块并根据父宽度换行到下一行
- javascript - 覆盖全局字体大小:62%
- django - 来自单个表的两个模型的查询集
- python - 是否可以修改 Adafruit DHT22 库以支持 Raspberry Pi 4 Model B (BCM2711)?