excel里indirect函数出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel里indirect函数出错相关的知识,希望对你有一定的参考价值。
我也不知道这个问题,能用“打字”说明白不,试试吧。
我有一个很大的表格,全是数字,用来计算、统计 用的。好比说
单元格S5=COUNTIF($L5:$Q5,INDIRECT("C"&COLUMN(E1)));//在单元格S5中,统计单元格C5中的数字在L5-Q5中包含相同数字的个数;
单元格T5=COUNTIF($L5:$Q5,INDIRECT("C"&COLUMN(F1)));//在单元格T5中,统计单元格C6中的数字在L5-Q5中包含相同数字的个数;
如此循环到很远处....
单元格AX5=COUNTIF($L5:$Q5,INDIRECT("C"&COLUMN(AJ1));//在单元格AX5中,统计单元格C36中的数字在L5-Q5中包含相同数字的个数;
这样的公式有个好处,就是当在S、T等列中 竖方向填充时 C不变,当在5、6、7等 横向填充时,引用单元格位置的数字还是可以变的,还可以拖动 成序列填充到下一个位置。
问题:
在我需要的单元格都填充公式以后,当我在删除“T列”后,单元格AX5里的公式显示错误,如下:
COUNTIF($L5:$Q5,INDIRECT("C"&COLUMN(#REF!))
这是为什么啊,怎么解决?
如何能做到删除T列,但AX列里的公式不会错,也不影响计算和统计。
=COUNTIF($L5:$Q5,OFFSET($C5,COLUMN()-19,))
当公式向右填充时,自动以C5单元格向下偏移,如果中途删除整列,那么COLUMN()中的列不复存在,会引用后面的以当前列为递增序列的列标号不存在。追问
COLUMN()-19是什么意思
追答因为公式输入在S5,相当于COLUMN(S5)-19=0,
参考技术A S5=COUNTIF($L5:$Q5,INDIRECT("C"&COLUMN()-14))右拉,下拉追问
COLUMN()-14 是什么意思?
追答你既然都知道
COLUMN(E1)
那么在S列输入
=COLUMN()-14 就是5啊?
Excel基础(18)Indirect函数
Excel基础(18)Indirect函数
2020年2月29日
一.基础
1.1.Indirect函数意义
返回文本字符串所指定的引用
类似于C语言的指针,根据他的地址就能找到这个值
1.2.与index对比?
1.index用法
=INDEX(E:E,ROW()*5-25)
2.indirect用法
1.先弄地址
="E"&ROW()*5-25
2.再使用
=INDIRECT(I6)
1.3.跨表引用顺序相同!
1.使用
2.制作引擎
=A4&"!G2"
3.拖动是不对应的
4.使用indirect
=INDIRECT(C4)
1.4.跨表引用顺序不同
1.顺序不同
2.思路
3.制作引擎
=A4&"!A:H"
4.结合vlookup
=VLOOKUP("张三",INDIRECT(C4),7,0)
1.5.再多个元素和跨表
1.多个元素
2.公式分析
注意相对引用即可
=VLOOKUP(B$2,INDIRECT($F3),7,0)
二.名称引用
2.1.定义名称和使用
1.新建名称
2.结合数据有效性?
=SUM(INDIRECT(G3))
2.2.多个连续的数据有效性
1.先定义名称
2.数据有效性添加省份
3.数据有效性添加城市
以上是关于excel里indirect函数出错的主要内容,如果未能解决你的问题,请参考以下文章