google-apps-script - 应用脚本 onEdit 函数调用 freezePositiveValues
问题描述
我试图在 A 列中对大于零的值进行更改时触发 freezePositiveOutput。 freezePositiveOutput 函数对自身起作用,但与 onedit 结合没有任何反应。
function onEdit(){
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");
var tabValidation = "sheet1";
var activeCell = ss.getActiveCell();
if(activeCell.getColumn() == 1 && activeCell.getRow() > 1 && ss.getSheetName() == tabValidation){
freezePositiveOutput();
}
}
function freezePositiveOutput(){
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");
var range = sheet.getRange("A1:A100");
var values = range.getValues();
for (var i = 0; i < values.length; i++) {
if (values[i][0] > 0) {
var cell = range.offset(i, 0, 1, 1);
cell.copyTo(cell, {contentsOnly:true});
}
}
}
解决方案
尝试这个:
function onEdit(e){
var sh=e.range.getSheet();
if(e.range.columnStart==1 && e.range.rowStart>1 && sh.getName()=="Sheet1") {
freezePositiveOutput(e);
}
}
function freezePositiveOutput(e){
var sheet=e.range.getSheet()
var range=sheet.getRange("A1:A100");
var values=range.getValues();
for (var i=0;i<values.length;i++) {
if (values[i][0]>0) {
var cell=range.offset(i,0,1,1);
cell.copyTo(cell,{contentsOnly:true});
}
}
}
推荐阅读
- sonarqube - 外部问题的 SonarQube 问题状态更新
- makefile - 您如何使 % 通配符使规则变得虚假?
- elixir - 如何从已弃用的 Supervisor.spec 更新为新的 Supervisor.behaviour?
- python - Numpy,PIL 不会反转 PNG 图像
- xslt - 根据 XSLT 中的值过滤特定节点
- android - 如何使 TextView 可见几秒钟并阻止其他视图显示?
- drupal-8 - Drush 不会将命令结果导出为文件
- arrays - 如何在swift ui中从字符串中获取子字符串?
- android - 颤动的 FCM 通知声音在发布中不起作用
- go - 向 nats 组发出请求