ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

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

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-7-23 10:57 | 显示全部楼层
本帖已被收录到知识树中,索引项:数组公式
有是错过错过..再留个记号..好深奥的东西,要慢慢消化..

TA的精华主题

TA的得分主题

发表于 2009-7-23 15:44 | 显示全部楼层
原帖由 胡剑0227 于 2009-5-8 23:20 发表


看了你的公式,2*6的,=LOOKUP(COLUMN()+(ROW()-1)*6-8,ROW(1:12),A1:A12)
虽然在单元格显示时是对的,但你试试 用F9查看一下,可以发现结果值是一个单元素数组。需要对COLUMN函数进行修正。
应该把 COLUMN()改 ...


根据胡老师的思路我改了下上面的公式:
=LOOKUP(COLUMN(A:F)+(ROW(1:2)-1)*6,ROW(1:12),A1:A12)
这样可以吗?

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-7-23 17:05 | 显示全部楼层

回复 476楼 美人计 的帖子

呵呵,自己使用F9检验一下吧,在练习过程中能顺带把一下编辑公式,查错的技巧都学到手,这些东西更珍贵,非花时间不可的。

TA的精华主题

TA的得分主题

发表于 2009-7-23 17:20 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-7-23 17:39 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
完成这个作业的,也可以尝试看看这个帖子,一定会有更深刻的收获。看不懂也不急
if({1,0},数组1,数组2)原理剖析-猜想
... [/quote]

老师,我真笨,给你看看我写的公式:
倒叙:=LOOKUP(LARGE(ROW(1:12),ROW(1:12)),ROW(1:12),A1:A12)
间隔取数=LOOKUP(SMALL(IF(MOD(ROW(1:12),2)<>0,ROW(1:12)),ROW(1:12)),ROW(1:12),A1:A12)

然后,那个奇偶并列我就不会了
后来看了其他同学的答案,我差点要晕倒,只能说,我太笨了

TA的精华主题

TA的得分主题

发表于 2009-7-23 20:13 | 显示全部楼层
抄作业也是学习的一个必经过程,大家都这么来的,呵呵,加油了,美人计姐姐

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-7-24 07:55 | 显示全部楼层
倒叙:=LOOKUP(LARGE(ROW(1:12),ROW(1:12)),ROW(1:12),A1:A12)
间隔取数=LOOKUP(SMALL(IF(MOD(ROW(1:12),2)<>0,ROW(1:12)),ROW(1:12)),ROW(1:12),A1:A12)

恩,公式很工整!能感觉到你的思路很清晰...

TA的精华主题

TA的得分主题

发表于 2009-7-24 08:20 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-7-24 08:23 | 显示全部楼层

回复 482楼 mingna_xiao 的帖子

学函数公式,如果对公式感兴趣,那么还是要拿下数组公式的,那样才能感觉到函数公式的力量。

一楼的题有点难(或者说唐突,因为没有讲什么东西就来一个不难不易东西撞了大家一下,呵呵),不过可以先绕过,看里面提供的 基础知识补充。

[ 本帖最后由 胡剑0227 于 2009-7-24 08:25 编辑 ]

TA的精华主题

TA的得分主题

发表于 2009-7-24 10:27 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
胡老师,请教下面这个公式(是您在"提升数组意识进一步处理"里面定义的名称
=SMALL(10*ROW(Sheet1!$A$2:$A$9)+Sheet1!$A$2:$G$9,TRANSPOSE(ROW(Sheet1!$1:$7))+7*(ROW(Sheet1!$1:$8)-1))-10*ROW(Sheet1!$A$2:$A$10)

前半部分SMALL()-10得到的结果是:{12,12,12,13,13,14,17;22,22,22,23,23,24,26;32,32,33,35,35,38,38;44,45,45,46,46,48,49;52,52,55,55,55,56,57;61,63,63,64,65,68,69;71,71,74,74,74,75,79;81,81,84,84,84,85,89}

后半部分ROW(Sheet1!$A$2:$A$10)的结果应该是{2;3;4;5;6;7;8;9;10}

以上二者相乘,怎么能得到这样的结果???{2,2,2,3,3,4,7;2,2,2,3,3,4,6;2,2,3,5,5,8,8;4,5,5,6,6,8,9;2,2,5,5,5,6,7;1,3,3,4,5,8,9;1,1,4,4,4,5,9;1,1,4,4,4,5,9;#N/A,#N/A,#N/A,#N/A,#N/A,#N/A,#N/A}

不是应该得到{24,24,24,26,26,28,34;……}吗?不明白其中的运算规则
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-25 13:54 , Processed in 0.037329 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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