我對此比較陌生,我在 Google Apps 腳本中撰寫了一個函式,從 API 獲取資料。
問題是它被插入到一個單元格中,而不是多行多列。
有人可以幫忙嗎?
嘗試谷歌搜索示例
我所做的
function spotpriser() {
var priser = 'api.energidataservice.dk/dataset/Elspotprices' '?start=2022-07-01&end=2022-07-02' '&sort=HourDK';
var response = UrlFetchApp.fetch(priser);
Logger.log(response);
var fact = response.getContentText();
var sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange(1,1).setValue([fact]);
}
uj5u.com熱心網友回復:
如果您這樣做getRange(1,1).setValue(),則所有資料僅插入一個單元格是正常的:由范圍定義的一個單元格(又名 A1)。
相反,您可能想要做的是獲得更大的范圍,對應于檢索資料的維度。
例如,假設您檢索了 3 行資料,并且應該在 2 列上顯示一行資料。
您首先需要創建一個大小為 5(行數為 nb)的陣列,其中每個元素也將是一個大小為 2(每個元素的列數為 nb)的陣列。
let myArray = [
[elt1_col1_value, elt1_col2_value],
[elt2_col1_value, elt2_col2_value],
[elt3_col1_value, elt3_col2_value]
]
然后您可以將此陣列插入到正確數量的單元格中,即定義正確的范圍
sheet.getRange(1,1,myArray.length,myArray[0].length).setValues(myArray); // start at row 1, col 1, insert the right number of rows and cols based on the array
請注意,我使用 setValue s(帶有 s)來表示它在多個單元格中寫入。
還要確保其中至少有一個元素,myArray否則myArray[0].length會引發錯誤。
getRange 的檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/524237.html
標籤:谷歌应用脚本
