google-apps-script - 基于值的 Google 电子表格中的重复行

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

我正在尝试以编程方式复制 Google 电子表格中的行。我希望行被复制的次数基于行本身的值之一。

例如,假设我有一个这样的表:

enter image description here

可以看到 C 列有数字。 C 列中的值是我想要复制该行的次数。这就是所需的结果:

enter image description here

从技术上讲,如果 C 列中的值为 3,我们将将该行复制两次。

关于如何编写 Google 电子表格脚本来执行此操作的任何想法都会很棒!

谢谢!

最佳答案

这相当简单,您应该自己尝试一下。我敢肯定,当您阅读下面的代码时,您会说“哦,当然,我本可以轻松完成的”……对吗?

function autoDup() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = sheet.getDataRange().getValues();
  var newData = [];
  for(var n in data){
    newData.push(data[n]);
    if(!Number(data[n][2])){continue};// if column 3 is not a number then do nothing
    for(var c=1 ; c < Number(data[n][2]) ; c++){ // start from 1 instead of 0 because we have already 1 copy
      newData.push(data[n]);//store values
    }
  }
  sheet.getRange(1,1,newData.length,newData[0].length).setValues(newData);// write new data to sheet, overwriting old data
}

关于google-apps-script - 基于值的 Google 电子表格中的重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25396824/

相关文章:

java - 有没有一种方法可以在不使用 java 的 OAuth 的情况下在 Google 电子表格中添加一行?

google-apps-script - 自定义 Google 电子表格/表格工具栏

google-apps-script - 自动重定向到页面

google-apps-script - 如何使用 Google Scripts UrlFetchApp.fetch 从外部 API 获取字段?

javascript - 如何在应用制作工具查询中引用值(就像在 Apps 脚本中一样)

javascript - 如何使用 Javascript 在 Google 表单上发送对多选问题的回复

regex - 如何规范/关联Google表格中的Unicode字符?

google-api - 用于过滤列的 Google 电子表格功能

google-apps-script - .getValue() 有时在读取 ImportXML 单元格时返回 #N/A

excel - 检查特定列中的文本后删除行