【发布时间】:2017-04-04 23:29:35
【问题描述】:
我有一个谷歌电子表格,我还有一个似乎无法解决的问题。
我在这个脚本中添加了一个按钮,当我按下按钮时,它会触发 AddClient 函数。
如何使下面的脚本循环遍历第 3 列中的所有行以搜索“是”值,当找到它时,将其下方的行复制到工作表“客户端”然后停止?
function AddClient(event) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();
if(s.getName() == "SETUP" && r.getColumn() == 3 && r.getValue() == "yes") {
var row = r.getRow() + 1; // Add 1 to the active row
var targetSheet = ss.getSheetByName("client");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 2, 1, 4).copyTo(target, {contentsOnly:true}); //Only selecting column 2, then the following 4 columns
}
}
编辑* 示例文档: https://docs.google.com/spreadsheets/d/1DFbAp0IN8_UFv9u8kWiZBTxDogj4e7FnuAPzC0grDw0/edit?usp=sharing
非常感谢任何帮助!
干杯, 雷尔
【问题讨论】:
-
您要设计的交互是什么?有人在第三列输入“是”,然后该行被复制到另一张纸上?
-
对不起,现在我更不清楚了,你有一个按钮,脚本应该用“是”复制所有内容,还是到处都有“是”,每一行都有一个按钮?
-
也许截图或者更好的示例电子表格会有所帮助
-
抱歉没有清理任何东西:P 我再次编辑,添加了与我的完全相同但数据名称不同的示例文档。
-
谢谢,这让事情变得简单多了,请看我的回答
标签: google-sheets