【问题标题】:Google script: how to set Array Value on google sheet to specific rows/column谷歌脚本:如何将谷歌工作表上的数组值设置为特定的行/列
【发布时间】:2017-12-24 13:27:25
【问题描述】:

到目前为止,我有一个代码可以从 Google Drive 上的文件夹中获取文件并在 Google 工作表上创建一个列表

function getFiles() {

  //get value from A1 of every sheet
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheetsCount = ss.getNumSheets();
  var sheets = ss.getSheets();
  var rangeHeader = [];
  var range = [];
  var value = [];
  var files = [];

  // for every sheet
  for (var i = 1; i < sheetsCount; i++) {

    value.push(sheets[i].getRange("A1").getValue()); //get cell A1

  }

  // Get files from folder
  for (var i = 0; i < value.length; i++) { // For all the id on the main sheet

    if (value[i] != "") {
      sheets[i + 1].appendRow(["File Name", "URL", "Last Updated", "File Type", "Description"]);
      files = DriveApp.getFolderById(value[i]).getFiles();
      while (files.hasNext()) { // While there is files
        var file = files.next(); // Look on the next file
        var Name = file.getName();
        var url = file.getUrl();
        var date = file.getLastUpdated();
        var type = file.getMimeType();
        var des = file.getDescription();

        sheet[i + 1].appendRow(Name, url, date, type, des);
      }
    }
  }

}

我在这样的工作表上得到了完美的结果

然后我创建一个函数来通过删除列 A:E 上的值并再次运行 getFiles 函数来更新列表

但是当我像这样为另一列添加价值时

标题行[File Name,url,Last updated,..] 移动到工作表的第 4 行,但我希望它在每次运行该函数时附加到第 2 行。

我将值添加到该列,因为它可能包含其他信息,我将在以后手动添加它。

那么,我想问一下如何在我的脚本上设置值或追加行到特定行(第 2 行)/列 A 到 E?谢谢。

【问题讨论】:

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


    【解决方案1】:

    documention 中所见,appendRow() 方法将数据放在最后一行之后。如果在您的示例中,该方法将您的第一行放在第四行,因为 G2:H3 范围内的数据。

    要从第二行开始,您应该使用getRange() method 并设置如下数据:

    var range = sheet.getRange(2, 1, 1, 5); // will get range A2:E2 for the header
    

    对于其余的数据,如果绝对要使用appendRow()方法,你应该考虑用getDataRange() method从工作表中获取数据,用clear() method清除工作表并在你之后恢复它'已经把你想要的数据。

    否则,您应该考虑将您从文件中获取的数据放在一个数组中,并使用setValues() method 将其放在这一端。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多