onEdit 编辑范围的自定义选择
onEdit custom selection of edited range
数据从外部来源发布到我的电子表格中。数据范围跨越三列 - A、B、C。我可以使用 onEdit 脚本访问新修改的范围。
function onEdit(e){
var activeSheet = e.source.getActiveSheet();
if(activeSheet.getName() !== "Raw") return;
var range = e.range;
但是,我想修改范围,使其仅包含 B 列中的范围值。是否有一种简单的方法可以过滤掉其他值,或者首先 select 它们?
这不是您需要的 getColumn 函数。您可以使用 getRange(a1Notation)
方法,然后获取该范围的值。
我已将 developer.google 视线中的方法链接到该方法 here。
更新:
根据评论反馈,如果总是只有三列,你会使用
var range = e.range;
var data = range.getValues(); //returns row as an array
var cell = data[0][1]; //gets data for column B, then you can do whatever with it
getValues() returns 一个二维数组,所以如果你有多行,你需要使用双 for 循环或其他具有相同效果的东西来遍历它们。
数据从外部来源发布到我的电子表格中。数据范围跨越三列 - A、B、C。我可以使用 onEdit 脚本访问新修改的范围。
function onEdit(e){
var activeSheet = e.source.getActiveSheet();
if(activeSheet.getName() !== "Raw") return;
var range = e.range;
但是,我想修改范围,使其仅包含 B 列中的范围值。是否有一种简单的方法可以过滤掉其他值,或者首先 select 它们?
这不是您需要的 getColumn 函数。您可以使用 getRange(a1Notation)
方法,然后获取该范围的值。
我已将 developer.google 视线中的方法链接到该方法 here。
更新: 根据评论反馈,如果总是只有三列,你会使用
var range = e.range;
var data = range.getValues(); //returns row as an array
var cell = data[0][1]; //gets data for column B, then you can do whatever with it
getValues() returns 一个二维数组,所以如果你有多行,你需要使用双 for 循环或其他具有相同效果的东西来遍历它们。