簡體   English   中英

如何使用getRange在Google表格中查找最后一行

[英]How find last line in a Google Sheet with getRange

我正在使用以下腳本查找和替換文本。 唯一的問題是該行:

var range = sheet.getRange("D2:D2000");

設置為2000時,它將在最后一行之后創建新行。我需要找到最后一行,然后更改此行代碼。 我迷路了 :(

我的總腳本如下:

 function runReplaceInSheet() { var spreadsheet = SpreadsheetApp.openById("1NK-pmvrJoSqKSgx2zRCAcRKGjk8SiiSsfwwerhfdM1SE"); // UPDATE ID var sheet = SpreadsheetApp.setActiveSheet(spreadsheet.getSheets()[0]); // UPDATE number in square brackets var range = sheet.getRange("D2:D2000"); // get the current data range values as an array // Lesser calls to access the sheet, lower overhead var startRow = 2; // First row of data to process var numRows = 2; // UPDATE number of rows to process // Fetch the range of cells var dataRange = sheet.getRange(startRow, 4, numRows, 1) // Numbers of rows to process // Fetch values for each row in the Range var data = dataRange.getValues(); for (var i = 0; i < data.length; ++i) { var row = data[i]; var v = row[3]; // edit: don't need this var values = range.getValues(); // Replace Names replaceInSheet(values, '1', 'Active'); replaceInSheet(values, '0', 'Inctive'); //write the updated values to the sheet, again less call;less overhead range.setValues(values); } } function replaceInSheet(values, to_replace, replace_with) { //loop over the rows in the array for (var row in values) { //use Array.map to execute a replace call on each of the cells in the row. var replaced_values = values[row].map(function(original_value) { return original_value.toString().replace(to_replace, replace_with); }); //replace the original row values with the replaced values values[row] = replaced_values; } } 

您可以使用sheet.getDataRange()返回一個范圍,該范圍描述其中包含一些數據的圖紙區域。

如果只需要列D2:d,則可以執行此操作

var range = sheet.getDataRange();
range = range.offset (1,3,range.getNumRows()-1,1);

或者您可以像這樣將數據放入一維數組中

var values = sheet.getDataRange().getValues().slice(1)
.map (function (d) {
    return d[3];
});

有很多方法。

暫無
暫無

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

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