[英]Google Apps Script. Cannot set value in range because number of rows in the data does not match the number of rows in the range
任務是在特定范圍(變量“范圍” )中查找單詞“請求”,從匹配“請求”的行上的最近列中復制信息,然后將其粘貼到另一個范圍。
無法弄清楚如何在多個單元格中插入變量“offsetval1”的值。 似乎它返回 9 個值,但如果我使用Logger.log(offsetval1.length);進行檢查它返回1.0。 但是,有 9 行具有不同的值(查看屏幕截圖)。
如何在這 9 行的范圍內輸入“offsetval1”的值?
function DocReq() {
var ui = SpreadsheetApp.getUi();
var result = ui.prompt("Please, enter Line Count"); // Prompt Input
var line_count = result.getResponseText(); // Prompt Result (Number) as VAR
var int_line_count = (+line_count); // Number as Integer
var range_bottom = int_line_count-1; // Integer - 1 (Total Amount of Rows)
var spreadsheet = SpreadsheetApp.getActive();
var currect_cell = spreadsheet.getActiveCell().getRow(); // Row of Active Cell
var int_current_cell = (+currect_cell); // Row as Integer (Top First Row)
var main_range_bottom = int_current_cell+range_bottom; // Bottom Last Row
var range = spreadsheet.getRange('L' + int_current_cell + ':' + 'L'+ main_range_bottom); // Get Range All !Requested!
var find_rqst = range.createTextFinder('Requested').findAll(); // Creating Text Finder !Requested!
for (var i = 0; i < find_rqst.length; i++) { // Finding Exceptionally !Requested!
var arrayofreq = find_rqst[i];
var offsetval1 = arrayofreq.offset(0, -4).getValues(); // Getting Values of !H! Column of All !Requested!
Logger.log(offsetval1);
}
Logger.log(offsetval1.length);
Logger.log(find_rqst.length);
spreadsheet.getRange('K131:K139').setValues(offsetval1);
}
代碼的問題是offsetval1
是在for
循環內迭代定義的,因此它總是包含一個值,這就是長度為1
的原因。 您實際上是用新內容覆蓋了以前的內容。
set
數組。function DocReq() {
var ui = SpreadsheetApp.getUi();
var result = ui.prompt("Please, enter Line Count"); // Prompt Input
var line_count = result.getResponseText(); // Prompt Result (Number) as VAR
var int_line_count = (+line_count); // Number as Integer
var range_bottom = int_line_count-1; // Integer - 1 (Total Amount of Rows)
var spreadsheet = SpreadsheetApp.getActive();
var currect_cell = spreadsheet.getActiveCell().getRow(); // Row of Active Cell
var int_current_cell = (+currect_cell); // Row as Integer (Top First Row)
var main_range_bottom = int_current_cell+range_bottom; // Bottom Last Row
var range = spreadsheet.getRange('L' + int_current_cell + ':' + 'L'+ main_range_bottom); // Get Range All !Requested!
var find_rqst = range.createTextFinder('Requested').findAll(); // Creating Text Finder !Requested!
var offsetval1 = []; // Modified code
for (var i = 0; i < find_rqst.length; i++) { // Finding Exceptionally !Requested!
var arrayofreq = find_rqst[i];
offsetval1.push([arrayofreq.offset(0, -4).getValue()]); // Modified code
}
spreadsheet.getRange('K131:K139').setValues(offsetval1);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.