我的变量似乎没有在for循环中更新

时间:2017-10-14 01:39:39

标签: javascript google-sheets

我正在制作一个简单的谷歌脚本,用于电子表格,该电子表格将在工作表中的某列中显示,并根据从原始列中的链接中提取的信息更新其旁边的列。

问题是无论输入列如何,都会输出相同的输出。我的代码在这里:

function idThatSucka() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var range = ss.getRange("F2:F20");
  for (var y = 1; y <= range.getHeight(); y++) {
    var logCell = ss.getRange("E"+y+":E"+y);
    var url = ss.getRange("F"+y+":F"+y).getValue();
    if (url){
      var response = UrlFetchApp.fetch(url);
      Logger.log(response.getContentText());
      var theLog = Logger.getLog();
      var start = theLog.split('</title>')[0];
      var output = start.split('Steam Community :: ')[1];
      logCell.setValue(output);
    }
  }
}

我怀疑“url”可能没有更新,但到目前为止我没有尝试过的任何东西都解决了这个问题。

1 个答案:

答案 0 :(得分:0)

试试这个

function idThatSucka() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
 var range = ss.getRange("F2:F20");
for (var y = 1; y <= range.getHeight(); y++) {
 var url='';
 var logCell='';
   logCell = ss.getRange("E"+y+":E"+y);
   url = ss.getRange("F"+y+":F"+y).getValue();
  if (url){
  var response = UrlFetchApp.fetch(url);
  Logger.log(response.getContentText());
  var theLog = Logger.getLog();
  var start = theLog.split('</title>')[0];
  var output = start.split('Steam Community :: ')[1];
  logCell.setValue(output);
 }
}
}