Sheet1中N8单元格为定义好的公式,定义名称为:统计区间,值为X&ROW():DL&ROW()
——这个描述不一定正确,但是结果是需要返回类似X3:DL3的引用区域。
现在需要在其他Sheet中引用此公式。
例如:在Sheet2的C7单元格中输入=Countif(统计区间,">0.5")
要求能正确返回Sheet2中X7:DL7中大于0.5的统计结果。
我需要在上图的表格里面写公式,然后引用公式在新的表格中,以新表格为数据源进行计算,其实就是为了保持一致性,要不然也没这么麻烦
你把光标放在SHEET1的A1,点插入---名称---定义名称为:统计区间,引用位置=SHEET!$X1:$DL1,
这里行是相对引用随着输入公式的位置会随着变化的,用X&ROW():DL&ROW()是不行的。
这样你在Sheet2的C7单元格中输入=Countif(统计区间,">0.5"),就返回Sheet2中X7:DL7中大于0.5的统计结果。看看样式
=SHEET!$X1:$DL1这种写法貌似不正确,确实可以根据引用位置的变化而变化,但是SHEET!这个表并不存在,Excel会弹出选择文件的提示信息
另外,其实定义名称,引用位置="X"&ROW()&"DL"&ROW()是可以解决我说的问题的,但是我现在需要的是把="X"&ROW()&"DL"&ROW()这个公式写到单元格里面,而不是在定义名称中,目的是为了简单参数化
我是=SHEET1!$X1:$DL1,你可以根据你自己的表名输入。
追问还是那句话,我要的是当前Sheet的统计,而非是你名称里面指定的Sheet1的统计,换句话说,我在哪个Sheet里面某一行引用他,他就统计哪个Sheet对应的X:DL列的那一行的值
另外,我需要把这个引用的值能够在单元格里面配置,这才是最麻烦的地方
不明白什么配置。
如果在Sheet1的N8中输入“="X"&ROW()&":DL"&ROW()”
实际计算的时候,引用单元格是C11,统计的结果是X8:DL8,而不是X11:DL11
如果不带"="输入,直接报错#REF,麻烦再看看,谢谢
另外,引用工作表名有什么意义吗?我在另外一个Sheet中直接输入=COUNTIF(INDIRECT(统计区间),">0.5")也可以获得您上面例子的效果
没明白你的意思,你的COUNTIF到底要统计哪里的
在N8中输入“="X"&ROW()&":DL"&ROW()” , N8的值就是 X8:DL8, 在C11输入=COUNTIF(INDIRECT(x&"!"&统计区间),">0.5") ,实际就是=COUNTIF(INDIRECT("Detail!X8:DL8"),">0.5"),也就是=COUNTIF(Detail!X8:DL8,">0.5"),怎么会变成11呢
在第一张图片里面有写着的:
在某一个Sheet的某个固定单元格,比如N8中,输入="X"&ROW()&":DL"&ROW(),并给N8定义名称为统计区间
在其他Sheet中某个单元格(不固定),比如C11中,输入类似=COUNTIF(INDIRECT(统计区间),">0.5")这样的公式,要求能统计到当前Sheet的X11:DL11的统计结果;如果是在D9中输入,那么统计X9:DL9范围内的
明白你的意思了。有个问题,这样看来countif可以跟n8无关。
定义一个名称y="X"&ROW()&":DL"&ROW()
=COUNTIF(INDIRECT(y),">0.5")
这个我是知道的,你看一下我之前的另外一个回复就明白了,我需要在【单元格】里面写【公式】,原因是我定义了一个参数表,所有的参数都是从表里面的单元格直接Indirect过来的,唯独在需要动态取行数的时候不能直接引用,是否有办法解决?
追答你的意思是X和DL不是固定的,而是由N8来决定的,对么?
N8内容填入类似这种格式:XROW:DLROW
=COUNTIF(INDIRECT(SUBSTITUTE(统计区间,"ROW",ROW())),">0.5")
求指教,A1=X&ROW():DL&ROW(),如何Indirect?
追答把这个参数放在indirect里
追问大哥,麻烦你试过再来发言,要是可以直接Indirect,我何必要来问?