如何在Google Apps脚本函数中将单元格值作为参数传递?

时间:2020-11-09 17:01:41

标签: google-apps-script google-sheets

我在代码的最后部分需要帮助。我正在使用API​​从政府数据库中获取街道和城市的名称,并且我使用邮政编码和门牌号作为输入。我可以使用该API,但是最后一步是将像元值(邮政编码,门牌号)作为参数传递到我的公式中。我似乎无法正常工作。

这是我的代码:

function postHuisNaarStraat (ref1, ref2){
  
  var PCCell = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(ref1).getValue();
  var HNCell = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(ref2).getValue();
  
  var postcode = "filters[postcode]=" + PCCell;
  var huisnummer = "filters[huisnummer]=" + HNCell;
  
  var API_KEY = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
  var url = "https://api.overheid.io/bag?" + postcode + "&" + huisnummer;
  var response = UrlFetchApp.fetch(
    url,
    {
      "headers":{
        "ovio-api-key":API_KEY,
        "Accept":"application/hal+json",
        "Content-Type":"application/json"   
      }
    }
  );
  
  // parse JSON reply
  var json = response.getContentText();
  var data = JSON.parse(json);
  
  // Logger.log(data);
  Logger.log(data["_embedded"]["adres"][0]["openbareruimte"]);
  
  
}

请帮助我从单元格(邮政编码,门牌号)中获取数据,并将它们各自的值添加到公式中。

这是我想做的但不能工作

1 个答案:

答案 0 :(得分:1)

替换

  var PCCell = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(ref1).getValue();
  var HNCell = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(ref2).getValue();

作者

  var PCCell = ref1;
  var HNCell = ref2;

甚至更好(因为这会使您的代码更短),而不是ref1ref2,因为函数参数名称分别使用PCCellHNCell

资源

相关问题