是否可以根据单元格中给定的值定义范围?
例如,我的选择是A1:A5,即五个单元格。是否可以通过设置单元格值(如B1)为5来让Excel确定这一点。
它的目的是为了轻松地更改许多范围,只需更改单元格值即可。因此,如果我将单元格值(B1)更改为6,则范围将自动更改为A1:A6。
更具体地说,我想要反过来做。
最后一个例子:
选择应为A6:A10(这是五个单元格)。在B1中,我有价值为5。 如果我将B1的值更改为6,则范围应更改为A5:A10。
有人能帮帮我吗?
You can also use OFFSET:
OFFSET($A$10,-$B$1+1,0,$B$1)
该操作将范围$A$10向上移动$B$1-1行(变为$A$6($A$5)),然后将范围调整为$B$1行(变为$A$6:$A$10($A$5:$A$10))。
这里有一个选项。它通过使用从起始单元格A1
的ROW
和COLUMN
开始,向下到初始行+B1
中保存的行数的INDIRECT(ADDRESS(...))
来实现。
SUM(INDIRECT(ADDRESS(ROW(A1),COLUMN(A1))):INDIRECT(ADDRESS(ROW(A1)+B1,COLUMN(A1))))
A1
:表示从"A"列开始的数据
B1
:表示要相加的行数
根据@Cici的回答,我在这里提供一个更通用的解决方案:
=SUM(INDIRECT(CONCATENATE(B1,C1)):INDIRECT(CONCATENATE(B2,C2)))
在意大利版的Excel中:
=SOMMA(INDIRETTO(CONCATENA(B1;C1)):INDIRETTO(CONCATENA(B2;C2)))
B1-C2单元格包含以下值:
您可以更改这些值以按需更改最终范围。
将公式拆分成几个部分:
因此:
=SUM(INDIRECT(CONCATENATE(B1,C1)):INDIRECT(CONCATENATE(B2,C2)))
结果为
=SUM(A1:A5)
我会在这里列出一些适用于意大利用户的SEO关键词:
使用上述公式,只需在B1到C2单元格中输入区间的端点即可在公式中看到其变化。
=SUM(INDIRECT("A1:A"&B1,TRUE))
=SUM(INDIRECT("A"&1+B1&":A"&B1,TRUE))
虽然这是一篇旧帖子,但正是我所需要的。我的问题很简单,如何将其更改为计数列而不是行。提前感谢您。我是Excel的新手。
=SUM(A1:INDIRECT(CONCATENATE("A",C5)))
即我的数据是A1 B1 C1 D1等,而不是A1 A2 A3 A4。