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列里的公式不会错,也不影响计算和统计。

在S5单元格中输入以下公式,然后向右填充公式
=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函数出错的主要内容,如果未能解决你的问题,请参考以下文章

如何将多个excel表格内容合到一起

EXCEL下拉菜单怎么弄

Excel基础(18)Indirect函数

关于excel 的indirect函数 里面带函数错误?

Excel高手必备的最为灵活实用的引用函数:Indirect

Indirect函数(Excel函数集团)