Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 7297|回复: 11

[已解决]如何自动筛选符合条件的数值进入SHEET2表里形成数组

[复制链接]
发表于 2013-7-14 12:08 | 显示全部楼层 |阅读模式
sheet1里有一张表单,有 [@姓名][@岗位].... 等表字段

sheet2里有一个单元格输入“主管”
可以利用公式自动筛选sheet1表单中[@岗位]=“主管”的人组建数组并在sheet2里显示出来

请见附件,有点复杂,请高手指教,原先没有用表单的时候可以实现,原先的公式是
={INDEX(中层员工!C:C,SMALL(IF($D$4=中层员工!$D$9:$E$682,ROW($9:$600),4^8),ROW(A1)))&""}

但现在更换成表单了,就没法实现了,请指教~!!跪求~~~
最佳答案
2013-7-17 11:14
  1. =INDEX(业务中层[姓名],SMALL(IF($D$4=业务中层[岗位],ROW(INDIRECT("1:"&COUNT(中层员工!B:B))),4^8),ROW(A1)))&""
复制代码
然后就是 公式中引用表格。。表格数据增加。。公式会出错。稍作修改。。支持表格数据更新。

TEST.zip

80.52 KB, 下载次数: 65

发表于 2013-7-14 20:42 | 显示全部楼层
回复

使用道具 举报

发表于 2013-7-15 00:54 | 显示全部楼层
  1. =INDEX(业务中层[姓名],SMALL(IF($D$4=业务中层[岗位],ROW($9:$19),4^8),ROW(A1)))&""
复制代码
回复

使用道具 举报

 楼主| 发表于 2013-7-15 16:05 | 显示全部楼层
豆浆 发表于 2013-7-14 20:42
ROW($9:$600)改ROW($1:$10)数组结束

改完后的结果是显示“#N/A”

公式是:
={INDEX(业务中层[姓名],SMALL(IF($D$4=业务中层[岗位],ROW($9:$19),4^8),ROW(A1)))&""}
={INDEX(业务中层[姓名],SMALL(IF($D$4=业务中层[岗位],ROW($9:$19),4^8),ROW(A2)))&""}
...

都是这“#N/A”
回复

使用道具 举报

 楼主| 发表于 2013-7-15 16:13 | 显示全部楼层
顺⑦.zì繎。 发表于 2013-7-15 00:54

这公式显示的值是第9行的数值,即“王九”,计算错误了
回复

使用道具 举报

发表于 2013-7-16 07:26 | 显示全部楼层
来个模拟结果。。在详细说明下要求。。。。
回复

使用道具 举报

发表于 2013-7-16 10:20 | 显示全部楼层
按数组三键了吗?
  ctrl+shift+enter
回复

使用道具 举报

 楼主| 发表于 2013-7-17 09:36 | 显示全部楼层
豆浆 发表于 2013-7-16 10:20
按数组三键了吗?
  ctrl+shift+enter

按了  
回复

使用道具 举报

 楼主| 发表于 2013-7-17 10:00 | 显示全部楼层
本帖最后由 venchine 于 2013-7-17 10:04 编辑
顺⑦.zì繎。 发表于 2013-7-16 07:26
来个模拟结果。。在详细说明下要求。。。。

见图片,一个是中层员工表里的名单列表,一个是建立数组后的填入单元格的样式,文件在附件里
数组.jpg
中层名单.jpg

TEST.rar

49.7 KB, 下载次数: 41

回复

使用道具 举报

发表于 2013-7-17 11:08 | 显示全部楼层
  1. =INDEX(业务中层[姓名],SMALL(IF($D$4=业务中层[岗位],ROW($1:$11),4^8),ROW(A1)))&""
复制代码
PS: 模拟结果要正确的。。你附件弄了个错误结果。影响他人的判断。
形成数组。这句话不适合这里。让人有点摸不着头脑。。。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-15 12:59 , Processed in 0.307388 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表