2017-10-25 7 views
0

カスタムURLを作成してAPIデータを取得するために、同じ列にあるセルのリストを使用したいと思います。私は、単一のセル(および単一の値リターン)のためのコードを書きましたが、列全体に拡張する方法がわからない:セル配列を使用してJson APIから値のリストを返すGoogle Script

function checkAddress() { 

    var addresses = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Addresses"); 
    var baseUrl = 'https://my.api.website/xxxxx&address='; 
    var address = addresses.getRange(1, 1); 
    var addrID = address.getValue(); 

    var url = baseUrl.concat(addrID); 
    var responseAPI = UrlFetchApp.fetch(url); 
    var json = JSON.parse(responseAPI.getContentText()); 

    var data = [[json.result]]; 
    var dataRange = addresses.getRange(1, 2, 1, 1); 
    dataRange.setValue(data); 

} 

のvar addrIDが変わるものであり、それらのすべてがにあります列。結果を同じ行のB列に戻したいと思います。 何か助けていただければ幸いです。ありがとうございました

答えて

0

次のコードを試してみてください。

function checkAddress() { 

    var addresses = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Addresses"); 
    var baseUrl = 'https://my.api.website/xxxxx&address='; 

    var data = addresses.getRange(1, 1,addresses.getLastRow()).getValues(); 

    for(var i=0;i<data.length;i++){ 
    var addrID = data[i][0]; 
    var url = baseUrl.concat(addrID); 
    var responseAPI = UrlFetchApp.fetch(url); 
    var json = JSON.parse(responseAPI.getContentText()); 

    var data1 = [[json.result]]; 
    var dataRange = addresses.getRange(i+1,2,1).setValue(data1); 
    } 
} 
+1

はい、動作します。私はすでに宣言されていたので、2番目の "var data"を変更しなければならなかったが、それが目立つ!どうもありがとう! –

関連する問題