ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 胡剑0227

[讨论] 有志于成为数组公式高手的不要错过(功力修炼)(胡剑开课了...)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-12-5 22:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖已被收录到知识树中,索引项:数组公式
胡剑0227 发表于 2009-5-8 20:46
数组公式,函数有职能分配吧。我个人认为,有些具有专门性功能,有些是通用类函数,这些通用性函数就像是造 ...

想请胡版看看,我用INDEX把A:D5的数据合成了一列,可是用LOOKUP却没有成功,不知道问题出在哪,请教下,如何写,如果不能写告诉我原因,先谢谢了! 数组.rar (2.47 KB, 下载次数: 4)

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-12-6 08:53 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
8414103 发表于 2012-12-5 22:54
想请胡版看看,我用INDEX把A:D5的数据合成了一列,可是用LOOKUP却没有成功,不知道问题出在哪,请教下, ...

呵呵,你的想法很好,不过超过LOOKUP函数的能力的,lookup函数第2,第3参数必须都是向量,是一一对应的一组,这里你将LOOKUP函数额第二个参数构造为二维的额,所以它是对应不了的。这是LOOKUP不及INDEX函数的地方,呵呵

TA的精华主题

TA的得分主题

发表于 2012-12-6 22:29 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
胡剑0227 发表于 2012-12-6 08:53
呵呵,你的想法很好,不过超过LOOKUP函数的能力的,lookup函数第2,第3参数必须都是向量,是一一对应的一 ...

谢谢胡版指点,从桩功到功力修炼,真的教会了我很多,让我理解了公式是用心写的,函数仅是工具!会写不如会想!希望能多教些我们!

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-12-7 19:28 | 显示全部楼层
8414103 发表于 2012-12-6 22:29
谢谢胡版指点,从桩功到功力修炼,真的教会了我很多,让我理解了公式是用心写的,函数仅是工具!会写不如 ...

呵呵,这个帖子能啃下来,水平应该还可以了,如果有时间可以多帮助一些提问的同学。不要贪多,用心去解答,在分享的同时享受那份快乐,我想这是最好的学习方法了

TA的精华主题

TA的得分主题

发表于 2012-12-17 16:01 | 显示全部楼层
本帖最后由 ys19840718 于 2012-12-17 18:25 编辑

=SMALL(INDIRECT("A"&ROW()&":"&"G"&ROW()),{1,2,3,4,5,6,7})
改成更通用一点
=SMALL(INDIRECT("A"&ROW()&":"&"G"&ROW()),TRANSPOSE(ROW(INDIRECT("1:"&COUNTIF($A$2:$G$2,"<>")))))
excel版本2007 sp2

22L的题目
以转换成两行6列为例
使用index
=INDEX($A$1:$A$12,MMULT({1;0},TRANSPOSE(ROW(INDIRECT("1:"&(COUNTIF(A:A,"<>")/2)))))+MMULT({0;1},TRANSPOSE(ROW(INDIRECT((COUNTIF(A:A,"<>")/2+1)&":"&COUNTIF(A:A,"<>"))))))
使用lookup
=LOOKUP(MMULT({1;0},TRANSPOSE(ROW(INDIRECT("1:"&(COUNTIF(A:A,"<>")/2)))))+MMULT({0;1},TRANSPOSE(ROW(INDIRECT((COUNTIF(A:A,"<>")/2+1)&":"&COUNTIF(A:A,"<>"))))),IF({1,0},ROW(INDIRECT("1:"&COUNTIF(A:A,"<>"))),A1:A12))

不知道有没有人用这样的,原来见过这个帖子,但是一直没看,因为觉得水平不够,之后看过不少内容觉得自己可以挑战下了,这几个是今天自己想的,望指教

点评

嗯,继续努力,虽然暂时没精力品读,不过真心希望大家有所收获,保持...  发表于 2013-1-3 23:09

TA的精华主题

TA的得分主题

发表于 2013-1-3 22:55 | 显示全部楼层
今晚看到37楼了,留个记号。。。

TA的精华主题

TA的得分主题

发表于 2013-1-3 23:39 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-1-23 17:45 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-1-28 09:38 | 显示全部楼层
最近需要了解数组公式,留印慢慢学,至少要求自己要看到400楼以上。

TA的精华主题

TA的得分主题

发表于 2013-1-28 11:35 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 01:29 , Processed in 0.040360 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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