如何使用索引选择两列-GetRangeList



我使用这个辅助函数通过列的标题获取列的索引。

function getColByName(name){
var headers = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1').getDataRange().getValues().shift();
var colindex = headers.indexOf(name);
return colindex+1;
}

我把它们存储在变量中。例如,列C具有标题Driver Name,变量将存储索引3。我这样做是为了在电子表格中移动位置时仍然可以引用该列(驾驶员姓名(。我想重写这行代码,用包含索引的变量引用列C和E。

spreadsheet.getRangeList(['C:C', 'E:E']).activate();

基本上,我希望getRangeList在不使用字母C的情况下获得Driver Name列(因为它可能会更改字母(。我看到getRangeList可以使用A1和R1C1表示法,所以我不确定我目前使用的辅助函数是否有效。

目前我引用了一整列像

getRange(1,C,maxrow)

其中maxrow = getMaxRows();

const headerA=sheet.getRange(1,1,1,sheet.getLastColumn()).getValues()[0];
let hObj={};
headerA.forEach(function(h,i){hObj[h]=i});
now hObj['ColumnName'] returns index and if you want column number then add one.

最新更新