2017-10-06 22 views
0

我目前正在处理一个电子表格,其中有ID的列。我想在此列中找到MAX值+1,只要有人添加一个新行并将其放入正确的单元格中。任何想法如何自动完成?唯一的用户交互应该是添加新行。让我给你看一张截图,以澄清我的问题。在SpreadSheet中自动找到列的最大值

Screenshot

+0

你可以尝试一些代码,看看它是否工作,你需要写的是电子表格背后'onEdit'功能。查看[this](https://developers.google.com/apps-script/guides/triggers/#onedit)和[this](https://developers.google.com/apps-script/guides/触发器/事件#编辑)来帮助你。 – kaza

回答

0

试试这个:

创建一个onchange安装并触发如下图所示将其设置为这个功能。

function onAddRow(e) 
{ 
    if(e.changeType=='INSERT_ROW') 
    { 
    //Logger.log('here'); 
    var ss=SpreadsheetApp.getActive(); 
    var sh=ss.getActiveSheet(); 
    var rg=sh.getDataRange(); 
    var vA=rg.getValues(); 
    var max='-1'; 
    for(var i=1;i<vA.length;i++) 
    { 
     if(vA[i][12]>max) 
     { 
     max=vA[i][12]; 
     } 
    } 
    var arg=sh.getActiveRange(); 
    var row=arg.getRow(); 
    //Logger.log(row); 
    sh.getRange(row,13).setValue(max + 1); 
    } 
} 

enter image description here