gpt4 book ai didi

google-apps-script - 使用 GAS 从 Google 电子表格中的 A1 表示法获取 R1C1 表示法

转载 作者:行者123 更新时间:2023-12-02 03:57:46 25 4
gpt4 key购买 nike

我需要在给定 A1 表示法的情况下获取 R1 C1 表示法的范围地址。我发现没有内置公式可以做到这一点。IE。如果我通过 A3:C8 那么输出应该是 r1c1 表示法中的 3 1 8 3

function getRangeAddress() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getActiveRange()
if (range) var rangeAddress = range.getA1Notation();
else var rangeAddress = sheet.getActiveRange().getA1Notation();
return rangeAddress;
}

converttoR1C1(rangeAddress);

最佳答案

我们可以使用ADDRESS获取 R1C1 地址。由于需要行索引和列索引,我们可以使用ROW、COLUMN、ROWS和COLUMNS来获取相应的索引。

以下公式将返回保存公式的单元格的 R1C1 地址

=ADDRESS(ROW(),COLUMN(),1,FALSE)

在其他一些场景中,我们可能需要使用 Google Apps 脚本来获取 R1C1,在此我们可以使用 getRow 和 getColumn 来获取起始单元格索引。使用 getNumRows 和 getNumColumns 并计算结束单元格的相应索引。

示例:

function toR1C1(reference) {
var range = SpreadsheetApp.getActiveSheet().getRange(reference);
var row = range.getRow();
var column = range.getColumn();
var start = 'R' + row + 'C' + column;
var rows = range.getNumRows();
var columns = range.getNumColumns();
var end = ((rows * columns) == 1)?'':':R' + (row + rows - 1) + 'C' + (column + columns - 1);
return start + end;
}

关于google-apps-script - 使用 GAS 从 Google 电子表格中的 A1 表示法获取 R1C1 表示法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43226886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com