如何使用Google Spreadsheet ADDRESS功能创建范围

时间:2014-08-26 13:01:48

标签: google-sheets

我正在尝试在Google电子表格中创建一个公式来计算当前单元格上方所有单元格的最大值,这样我就可以将其复制到任何单元格并仍在工作。我尝试使用这样的ADDRESS函数:

=MAX(ADDRESS(1;COLUMN()):ADDRESS(ROW()-1;COLUMN()))

但我得到一个解析错误。我试过这个代码的很多变种,但总是会出错。显然,ADDRESS功能不允许作为范围的一部分。

有没有办法根据当前单元格位置创建对范围的引用?

3 个答案:

答案 0 :(得分:9)

被困在非常相似的东西上。这样的事情应该有效。

=MAX(INDIRECT(1, COLUMN()) & ":" & ADDRESS(ROW()-1, COLUMN())))

答案 1 :(得分:0)

如果您想获取某个范围的字符串地址,这可能也很有用:

=ADDRESS(row(A3:A6),COLUMN(A3:A6))&":"&ADDRESS(row(A3:A6)+rows(A3:A6)-1,COLUMN(A3:A6)+COLUMNS(A3:A6)-1)

在这种情况下,它将返回范围内的字符串

$A$3:$A$6

答案 2 :(得分:0)

在范围字符串上使用INDIRECT函数将返回一个范围引用,然后可将其用于公式中,例如。

INDIRECT(ADDRESS(1;COLUMN()):ADDRESS(ROW()-1;COLUMN()))

应该在

中工作
MAX(INDIRECT(ADDRESS(1;COLUMN()):ADDRESS(ROW()-1;COLUMN())))