【问题标题】:Are there any way to insert multiple input (same or different cells) in Google Spreadsheets / script?有没有办法在谷歌电子表格/脚本中插入多个输入(相同或不同的单元格)?
【发布时间】:2021-04-10 16:53:49
【问题描述】:

这是我当前的代码,它只允许在单元格 C2 上进行一个输入,我想知道是否可以在单元格 C2 或其他单元格中添加另一个输入。非常感谢您的指导,新手在这里!

function onEdit()
{
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  if(sh.getName()=="T-D-SOC")//It will only do this on Sheet1
  {
  var lr=sh.getLastRow();
  var name=sh.getRange('C2').getValue();
  sh.hideRows(2, lr-1);
  var allRanges=ss.getNamedRanges();
  var rows=[];
  for(var i=0;i<allRanges.length;i++)
  {
    if(allRanges[i].getName()==name)
    {
      var rgi=allRanges[i].getRange();
      var toprow=rgi.getRow();
      var numrows=rgi.getNumRows();
      sh.showRows(toprow, numrows);
      sh.showRows(2,19);
      break;
    }
  }
  }
}

【问题讨论】:

    标签: google-apps-script google-sheets spreadsheet


    【解决方案1】:

    如果要在一个单元格中写入,只需定义另一个单元格的范围并在其中写入setValue

    sh.getRange('C3').setValue('My text');
    

    【讨论】:

    • 我可能拥有自己的程序,我经常使用同一个文本框来允许多个输入,使用正斜杠作为分隔符,然后使用 String.split('/') 来分隔它们。
    【解决方案2】:

    为了在特定范围内设置一个值,你必须使用setValue方法如果你有多个值,你也可以使用setValues方法.

    但是,根据您想要实现的具体目标,您可能需要检查事件对象 e,因为您使用的是 onEdit 触发器。

    例如,如果您想检索进行编辑的范围,您可以简单地使用:

    let editRange = e.range.setValue("VALUE").
    

    参考

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-29
      • 1970-01-01
      • 2016-07-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多