首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在表单提交触发器的B列中删除A列中的数字

如何在表单提交触发器的B列中删除A列中的数字
EN

Stack Overflow用户
提问于 2019-04-25 00:59:14
回答 1查看 41关注 0票数 0

我有两列数据,我正在尝试删除列A中的值,当在B列中查找时,我想删除单元格中的重复数字,但最重要的是删除H中的重复数字一旦在I列This the table I am using中发现,我在引用您建议的应用程序脚本测试解决方案中的工作表时遇到问题。

在“团队分配”表单提交时,我希望检查列H中的值是否与I中的匹配/重复,如果发现从H列中删除自身。例如,16在H列第2行,“团队分配”表单提交已将16添加到列I中。16从列h中删除-

代码语言:javascript
复制
function deleteInColumn() {
 SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Project 
   Assigner").activate();
  var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rga=sh.getRange(1,8,sh.getLastRow(),1);
var vA=rga.getValues();
var rgb=sh.getRange(1,9,sh.getLastRow(),1);
var vB=rgb.getValues();
var vB=vB.map(function(r){return r[0]});
 var s=0;
 for(var i=0;i-s<vA.length;i++) {
  if(vB.indexOf(vA[i-s][0])>-1) {
    vA.splice(i-s,1);
  s++;
}
 }
 rga.clearContent();
 sh.getRange(1,1,vA.length,1).setValues(vA);
}`

A列

1 2 4

4 3 6 5

2 9 7

B栏

2 4 1

A列

365 97

EN

回答 1

Stack Overflow用户

发布于 2019-04-25 08:07:04

试试这个:

代码语言:javascript
复制
function deleteAIfInB() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var rga=sh.getRange(1,1,sh.getLastRow(),1);
  var vA=rga.getValues();
  var rgb=sh.getRange(1,2,sh.getLastRow(),1);
  var vB=rgb.getValues();
  var vB=vB.map(function(r){return r[0]});
  var s=0;
  for(var i=0;i-s<vA.length;i++) {
    if(vB.indexOf(vA[i-s][0])>-1) {
      vA.splice(i-s,1);
      s++;
    }
  }
  rga.clearContent();
  sh.getRange(1,1,vA.length,1).setValues(vA);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55835129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档