如何从A1符号获取对应单元格范围的数字参数?
从A1符号提取行列参数(Google Apps Script)
要实现从A1符号(如A1:E2)反向获取(起始行, 起始列, 行数, 列数)参数,直接借助Google Apps Script的Range对象即可完成,无需自己编写复杂的正则解析逻辑。
示例代码如下:
function getRangeParamsFromA1(a1Notation) { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange(a1Notation); var startRow = range.getRow(); var startCol = range.getColumn(); var numRows = range.getNumRows(); var numCols = range.getNumColumns(); return [startRow, startCol, numRows, numCols]; } // 测试调用:传入"A1:E2"会返回 [1, 1, 2, 5] Logger.log(getRangeParamsFromA1("A1:E2"));
代码说明
sheet.getRange(a1Notation):通过目标A1符号直接获取对应的Range对象range.getRow():提取该区域的起始行号range.getColumn():提取该区域的起始列号range.getNumRows():提取该区域包含的总行数range.getNumColumns():提取该区域包含的总列数
如果解析的是单个单元格的A1符号(如B3),逻辑同样适用,此时返回的行数和列数均为1。
内容的提问来源于stack exchange,提问作者icecream sugar black
相关产品推荐
相关产品推荐

