ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

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

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-5-18 21:49 | 显示全部楼层
本帖已被收录到知识树中,索引项:数组公式
原帖由 胡剑0227 于 2009-5-18 19:35 发表


目前在本贴讨论中已经提到的 离散列 合并为一个二维数组 可以使用 MID,IF,CHOOSE,此外TEXT函数也可以合并离散的列,只是我感觉对于合并不同列的情况,TEXT函数似乎只能合并四个列。

TEXT函数来实现列合并非 ...

方版的这篇文章之前也看过几遍了,始终是不得精髓所在。今天在胡版的提示之下尝试用TEXT做了一下合并数组。冗繁不说,还有诸多的字符受限。请胡版指教。

text合并数组.rar

3.52 KB, 下载次数: 104

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-18 23:03 | 显示全部楼层
原帖由 weifaxiang 于 2009-5-18 21:49 发表

方版的这篇文章之前也看过几遍了,始终是不得精髓所在。今天在胡版的提示之下尝试用TEXT做了一下合并数组。冗繁不说,还有诸多的字符受限。请胡版指教。



首先提一下:217,220的作业还不符合要求,呵呵。你回去看一下,不用当做是区域中间隔的列去除间隔,而要当成是离散的不相干的多个列来处理。

此外,很明显的第二阶段的的营养还没有吸收,没有领悟按维度扩展的思想,呵呵。

不过要肯定的是:第一阶段的知识学得很扎实,能活用。
先分析如下:TEXT的第一参数,你的IF的目的应该是要生成一个 6行*2列的数字,其中第一列是正数,第二列式负数,是不是?
那么可以简化为:{-1,1}*ROW($1:$6)

其次:如果吸取了第二阶段按维度扩展的思想后,可以更简化为:{1,-1}

[ 本帖最后由 胡剑0227 于 2009-5-18 23:07 编辑 ]

text合并数组hujian.rar

3.9 KB, 下载次数: 203

TA的精华主题

TA的得分主题

发表于 2009-5-18 23:10 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 胡剑0227 于 2009-5-18 23:03 发表



首先提一下:217,220的作业还不符合要求,呵呵。你回去看一下,不用当做是区域中间隔的列去除间隔,而要当成是离散的不相干的多个列来处理。

此外,很明显的第二阶段的的营养还没有吸收,没有领悟按维度扩 ...

版主批评的是,已痛定思痛。正在努力补习中。

TA的精华主题

TA的得分主题

发表于 2009-5-18 23:41 | 显示全部楼层
请教版主。

关于IF 合并数组.rar

5.46 KB, 下载次数: 114

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-18 23:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 weifaxiang 于 2009-5-18 23:41 发表
请教版主。


恩,第二阶段的这是就是讲了这些内容,就是你所疑惑的。

你可以选择先去215,216,224楼的图去悟一下,或则...我尝试表达?感觉还是先悟的好。你选一个,呵呵

不要急,慢慢来。悟出来了,你才可以用这个来思考,来直接做题。否则到了把多个离散的列组合成一个加长的列时你一样需要葫芦来画瓢的。

[ 本帖最后由 胡剑0227 于 2009-5-18 23:58 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-19 00:01 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
使用IF函数来实现离散列的合并除了按维度扩展外,还利用了IF函数的特殊运算机制,可以参看下图。

从按维度扩展理论来说,一个 7列的一维数组 和一个多行6列的数组 运算,结果生成多行7列的数组,但最后一列应该是错误值#N/A。

但是我们发现,在使用IF函数时,条件使用一个合适的 7列一维数组,第二参数是多行6列的数组,第三参数是一列的数组,最后并不会出现#N/A。第三参数按维度扩展变成了7列数组,没有问题,但是6列的第二参数不可能变成7列的,那么?到底...

也许下图就为我们解释了这个原因。

[ 本帖最后由 胡剑0227 于 2009-5-19 00:08 编辑 ]
IF函数的运算机制.png

IF函数的运算机制.rar

1.52 KB, 下载次数: 234

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-19 00:13 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
个人评论:IF 和 CHOOSE。
这两个都是条件函数,只是IF的英文解释为“如果”,平时也说几句IF,IF,(如果,如果),因此IF函数被广泛的应用,而CHOOSE就被冷落了。这算是社会心理学对大家使用条件函数时的影响吧,呵呵。

代码中也有对应的这两个语句,一个叫IF语句,另一个是“枚举”,应该就对应了这里的IF和CHOOSE。
IF,理性的分析,第一参数提供了两种可能,然后对应返回各个可能的对应返回值;
CHOOSE,03版中,第一参数提供了29种可能,然后对应返回各个可能的对应返回值;
           07版中,第一参数更是可以提供254中可能....
因此,除了CHOOSE函数函数名字符个数多了点,完全要比IF强大的多。

遐想,如果CHOOSE和IF对应的函数名换一下,并且CHOOSE的第一参数可以直接从0开始取数,而不是现在的从1开始取数,那么IF函数是没有机会和大家见面的,当然这是个人认为,呵呵。

当然IF之所以受大家欢迎是因为IF可以嵌套着使用,因此并不因为一个IF只有两种可能而无法处理更多条件的情况。这就是这个世界奥秘的地方,2和1相比,远远不只是多了1,而是多了全部。
我们知道0和1可以表达任何东西,即计算机...扯远了...
不过下次说到多维问题时,大家会发现...这个世界很多原理是相通的,呵呵,那就是二维数组远远不只是比一维数组多了一维,而是多了全部

[ 本帖最后由 胡剑0227 于 2009-5-20 14:39 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-19 00:31 | 显示全部楼层
大家有空尝试一下,把一个 列数组  嵌插 在另一个列数组中间的问题。很简单的,练练手,也算等等其他同学,呵呵

TA的精华主题

TA的得分主题

发表于 2009-5-19 01:41 | 显示全部楼层
原帖由 胡剑0227 于 2009-5-19 00:01 发表
使用IF函数来实现离散列的合并除了按维度扩展外,还利用了IF函数的特殊运算机制,可以参看下图。

从按维度扩展理论来说,一个 7列的一维数组 和一个多行6列的数组 运算,结果生成多行7列的数组,但最后一列应该是 ...

终于明白楼主所说的按维度扩展的含义了。
交220楼作业。花了一晚的时间终于算是有点明白版主的意思了。请版主指教。

[ 本帖最后由 weifaxiang 于 2009-5-19 02:40 编辑 ]

合并数组-WFX.rar

7 KB, 下载次数: 290

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-5-19 05:39 | 显示全部楼层
呵呵,还是自己悟出来的感觉比较好吧,呵呵。看来我是做对了,呵呵,狠狠心还是有必要呀,呵呵
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-7-6 09:17 , Processed in 0.038218 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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