保函网

excel表格Excel INDEX+SMALL函数用法

发布时间:2025-08-17 | 来源:互联网转载和整理

=INDEX(结果列,SMALL(IF(条件,ROW满足条件的行号,较大的空行行号),ROW(1:1)))&""

【原理】1、数组运算;2、空单元格与空文本合并。【特点】得到的结果是文本。【实例】如图:筛选张三的领用记录(条件是E1单元格的“张三”)。

1.=INDEX(B:B,SMALL(IF(A$2:A$8=E$1,ROW(A$2:A$8),4^8),ROW(1:1)))&""

复制公式或代码

【解析】:对照“必***技”,多数人已可以瞧出一点端倪来。1、条件模块:IF(A$2:A$8=E$1,ROW(A$2:A$8),4^8)表示如果A2:A8的姓名等于E1的“张三”,则返回A2:A8的行号,否则返回4^8,即65536。IF(如果,则,否则——这语言不难读吧条件模块经过数组运算,因为A2、A5、A8满足条件,所以返回的是行号数组{2;65536;65536;5;65536;65536;8}。

2、排序模块:SMALL(IF,ROW(1:1))公式的第1行,ROW(1:1)返回{1},在第2行返回{2}……因此,利用SMALL+ROW可以将条件模块返回的行号数组从小到大依次排序得出。当然,此例中SMALL({2;65536;65536;5;65536;65536;8},1)得到的是2,第2小的是5,第3小的是8,第4小及以后都是65536。

3、引用模块:INDEX(引用列,SMALL得到的行号)=INDEX(B:B,2)——引用B2,=INDEX(B:B,65536)——引用B65536

4、容错模块:&""当公式到了第4行,3个满足条件的记录都已经找出来,此时公式是=INDEX(B:B,65536)&“”因为Excel2003的最大行数是65536行,而在这一行中,一般不会有人输入数据,是空单元格。因此,利用空单元格与空文本合并返回空文本的特性,将超出结果数量的部分不显示出来。

上一篇:借记卡和信用卡的区别

下一篇:新政策养老保险补

其他文章

  • 茅台酒和茅台镇的酒有什么区别?
  • 无羞无臊是什么意思
  • 2017临床医学考研吧
  • 金融学专业投资科学
  • 坐汽车从东莞到海口要多长时间
  • 白菜用英语怎么说 两颗白菜用英语怎么说
  • 江南十校哪十校
  • 教师资格证是永久性的吗(教师资格证是永久的吗)
  • cvt无级变速和6挡手自一体,有什么区别
  • 黄鹤楼写作背景20字(黄鹤楼写作背景)
  • 2023年达州职业技术学院单招报名条件有哪些
  • 2015年中考平果高中录取分数线是多少
  • 建筑工程测量前途如何?
  • 忠武路演员是什么意思 宋仲基是忠武路演员吗
  • 竹笋有哪些品种,竹笋哪些品种可以吃
  • renee英文名是什么意思
  • 记叙文的表达方式有哪五种(记叙文的表达方式)
  • 对女生说的情话古风句子很甜还撩
  • 麻雀肉怎么做好吃
  • 老鼠用英语怎么读