自动化&在Google表格中循环导入XML

时间:2016-07-13 13:25:32

标签: google-apps-script google-sheets

我使用此脚本在Google表格中使用触发器自动化ImportXML。它适用于1个URL单元格引用(本例中为B2),并在D2中返回结果

    function getData() {
  var queryString = Math.random();

  var cellFunction1 = '=IMPORTXML("' + SpreadsheetApp.getActiveSheet().getRange('B2').getValue() + '?' + queryString + '","'+ SpreadsheetApp.getActiveSheet().getRange('A3').getValue() + '")';
  SpreadsheetApp.getActiveSheet().getRange('D2').setValue(cellFunction1);

 }

我需要它循环并返回" B:B"中所有单元格的结果。范围(理想情况下,只有空的)并将结果发布在" D:D"范围。

是否可能,或者我是否必须为我想要数据的每一行编写脚本?

1 个答案:

答案 0 :(得分:2)

Sheet.getDataRange()自动获取具有值的所有单元格的矩形范围。

var data = sheet.getDataRange()。getValues(),例如,您可以使用此格式读取单元格。

data[0][0] // This is the value of your first cell. 

因此,添加数据[1] .length,您就可以获得列数。 Data.length是您的行数。只需使用两个for循环遍历所有数据。

for (var i in data) {
  for (var j in data[i]) {
    // Now you can use your setters.
  }
}

享受