Google表格onEdit计算

汉娜(Hanna Teobald)

我试图弄清楚如何onEdit为以下方法创建事件。

示例:Column1 =我将输入值以计算Column2(+/-)Column2 =基于单元格值(+/-)的值Column2基于输入的单元格值

我需要每一行a1:b1a2:b2依此类推:

例如,当我输入A1(-100)B1已经有一个值时200,应该给我结果,100然后删除输入的A1中的值。相同A2(+100)B1(50)应该给我一个结果,150并删除中的值A2

所以,最终的结果应该是B1 = 100B2 = 150

我用此代码尝试过

function onEdit(e){
  var Column1 = 1;
  var Column2 = 2;

  if( e.range.getColumn() == Column1 && e.value){
    e.range.setValue(e.value * e.range.offset(0, Column2 - Column1).getValue());
    }
}

但这只是我需要的一半,我现在在这里呆了几个小时。如果有人可以帮助我完成这项任务,那就太好了。

马里奥斯

说明:

根据您的解释,您想要添加数字。

例如:

(-100) + 200会给你100

您当前的脚本缺少以下两个功能:

  • 它不添加值。

  • A操作完成后,不会清除列中的值

解:

function onEdit(e) {
  const inputCol = 1;
  const as = e.source.getActiveSheet(); // get active sheet
  const ar = e.range;
  const row = ar.getRow(); // get edited row
  const col = ar.getColumn(); // get edited column
  if (as.getName() == "Sheet1" && col == inputCol){
      const rng = as.getRange(row,inputCol+1);
      rng.setValue(parseInt(e.value)+rng.getValue());  
      ar.clearContent();
  }
}

我假设您想将此操作应用于特定的工作表,因此我添加了一个条件以仅针对运行代码Sheet1如果您不希望这种行为,则将其完全删除。如果要使用其他工作表名称,请更改Sheet1为工作表名称

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Google表格onEdit大写脚本功能

基于 onedit / google 表格的调用脚本

Google表格脚本onEdit的表单响应清除单元格

Google表格onEdit(e)TypeError:无法读取属性

Google表格脚本可隐藏无法在onEdit()上使用的列

如何在多个Google表格中使用多个OnEdit功能

适用于 Google 表格的 Apps 脚本(onedit 功能)

Google表格onEdit在具有不同列的表格之间移动行

如何计算新的Google表格链接

在Google表格上计算动态定价

数据插入后的 Google 表格计算

Google表格单元格重新计算

Google表格平均功能无法正确计算

Google表格数组公式计算总和列A:A

简化Google表格中的重复公式计算

如何仅在 Google 表格中计算年龄

Google表格中基于公式的单元格更改未触发onEdit脚本

当数字小于 x 时刷新 Google 表格中的 onEdit() 过滤器

在Google表格中发送电子邮件后出现onEdit问题

Google表格会根据单元格内容将光标移至onEdit触发器上

将所选的下拉列表选项替换为Google表格上onEdit的相应代码

如何循环使用onEdit函数以从Google表格中的多行发送电子邮件?

Google 表格 onedit 方法导致脚本崩溃,否则会起作用?

Google电子表格脚本编辑器:onEdit setValue或clearContent

Google表格onEdit函数跳转到A1单元格

Google表格onEdit-清除进行编辑的活动行上方行中的选定内容

Google表格加载项onOpen()仅运行一次,但onEdit()很好

计算Google表格中多个表格中单词出现的次数

Google Doc Script onEdit