簡體   English   中英

將字符串拆分為數組后,無法在 Google 表格中使用“setValues”

[英]Unable to use "setValues" in Google Sheets after splitting string into array

我不確定,為什么在將文本拆分為數組后,一次性設置值不起作用。 錯誤信息有點奇怪:

“無法在 number[][] 中轉換數組”

但是它工作正常,如果我遍歷數組並使用 setValue (沒有“s”),那么我無法弄清楚出了什么問題。

我會很感激你的幫助。 提前致謝。

function Replace() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh = ss.getSheetByName("Sheet1");

  var text ="Might-be-a-system-bug-of-course.";
  var list = text.split("-");

  var listLen = list.length;

  Logger.log(list.length);
  Logger.log(list);

  // This does not work:
  sh.getRange(1, 1, listLen, 1).setValues(list); 

  // This works:
  //for (var i = 0; i < listLen; i++) {
  //  sh.getRange(i + 1, 1).setValue(list[i]);
  //}

}

setValues需要一個二維數組:

function Replace() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh = ss.getSheetByName("Sheet1");

  var text ="It's-almost-never-a-system-bug";
  var list = text.split("-");

  var listLen = list.length;

  Logger.log(list.length);
  Logger.log(list);

  // This work:
  sh.getRange(1, 1, listLen, 1).setValues(list.map(e => [e])); 
  sh.getRange(10, 1, 1,listLen).setValues([list]);

  // This works:
  //for (var i = 0; i < listLen; i++) {
  //  sh.getRange(i + 1, 1).setValue(list[i]);
  //}

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM