【发布时间】:2020-02-21 17:51:59
【问题描述】:
我在使用 Google 脚本中的以下公式时遇到了一些困难。我想要实现的是:
1- 从 A1 中获取数字
2-来自Number,有多个返回
3- 将这些返回值设置在与原始数字相同的行 (A) 中,在相邻单元格 (A2, A3) 中
现在的样子:
function GETALLTWO(bid) {
if (input.map) {
return input.map(GETALLTWO)
} else {
return input;
}
var api_str = "client_id=randomstringofnumbers&client_secret=anotherrandomstringofnumbers";
var url= "https://api.untappd.com/v4/beer/info/" + bid + "?" + api_str;
var response = UrlFetchApp.fetch(url);
if (response.getResponseCode() == 200) {
var respObj = JSON.parse(response.getContentText());
var beer = respObj.response.beer;
if (beer.bid == bid) {
return beer.beer_name;
return beer.rating_score;
return beer.stats.total_user_count;
return beer.rating_count;
return beer.stats.monthly_count;
return beer.created_at;
}
}
}
从 Code.gs 中,我可以得到第一个 Return to work,但我是否正确组合了不同的功能?以及如何设置返回位置?
希望有人可以提供帮助,希望了解有关脚本的更多信息。
// 编辑以备将来参考:
function getAll(bid) {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Overview')
var row=sh.getActiveCell().getRow();
var bid=sh.getRange(row,3).getValue();
var api_str = "client_id=randomstring&client_secret=randomstring";
var url= "https://api.untappd.com/v4/beer/info/" + bid + "?" + api_str;
var response = UrlFetchApp.fetch(url);
if (response.getResponseCode() == 200) {
var respObj = JSON.parse(response.getContentText());
var beer = respObj.response.beer;
if (beer.bid == bid) {
var rObj= {name:beer.beer_name,rating:beer.rating_score,totalcount:beer.stats.total_user_count,ratingcount:beer.rating_count,monthlycount:beer.stats.monthly_count,createddate:beer.created_at};
values=[[rObj.name,rObj.ratingcount,rObj.rating,rObj.totalcount,rObj.monthlycount,rObj.createddate]];
return values;
}
}
}
【问题讨论】:
-
同一行或同一列? A2,A3 是同一列。 A1,B1 是同一行
标签: arrays string google-apps-script custom-function