Exception:参数(字符串,数字)与SpreadsheetApp.Spreadsheet.getRange的方法签名不匹配

问题描述 投票:0回答:1

我正在尝试编写脚本以从Google Analytics(分析)中获取数据。我在许多网站和youtube视频的帮助下编写了此文件,但无法解决我的代码中的1个问题。有人可以帮我吗

function myFunction() {
  var app = SpreadsheetApp
  var doc = app.getActiveSpreadsheet().getActiveSheet();
  for(var i=0;i<107;i++){ 
  var viewId = doc.getRange(i+2,1).getValue(); // Your Google Analytics view ID
  
  var startDate = Utilities.formatDate(doc.getRange("K1").getValue(), "GMT+2", "yyyy-MM-dd");
  var endDate = Utilities.formatDate(doc.getRange("K2").getValue(), "GMT+2", "yyyy-MM-dd");;
  var metric = 'ga:sessions, ga:newUsers, ga:bounceRate';
  var option = {'segment': 'gaid::reM9CWAgR0ys4_Ng4N_aVw'};

    var result = Analytics.Data.Ga.get(viewId, startDate, endDate, metric, option); // Make the request
  
    var sessions = result.totalsForAllResults['ga:sessions'];
    var newusers = result.totalsForAllResults['ga:newUsers'];
    var bouncerate = result.totalsForAllResults['ga:bounceRate'];
  
    var doc = app.getActiveSpreadsheet(); // Current document
    var sheet = doc.getActiveSheet(); // Current sheet
  
    sheet.getRange(i+2,2,1,1).setValue(sessions); // Write total sessions
    sheet.getRange(i+2,3,1,1).setValue(newusers); // Write toal newusers
    sheet.getRange(i+2,4,1,1).setValue(bouncerate); // Write total bouncerate
}
  
}
google-sheets google-analytics google-analytics-api google-sheets-api
1个回答
0
投票

之所以会发生错误,是因为脚本无法在K1和/或K2单元格中找到startDate或endDate,或者因为视图ID少于107个,并且通过循环运行,它在第一列中找到了一个空单元格(或者不是从第二个单元格)。

它不依赖于Google Analytics。

© www.soinside.com 2019 - 2024. All rights reserved.