ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

关于数组示范公式的两个疑问

[复制链接]

TA的精华主题

TA的得分主题

发表于 2004-10-21 13:13 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖已被收录到知识树中,索引项:数组公式

1.示范公式中,SUM函数后面的括号为两层,可是我拿掉一层后没有影响,现在想知道,为什么要设置两层?=SUM((A1:D1*{1,2,3,4})) 2.对于内部已经含有数组的公式,是否必须用数组公式的组合键来结束输入,本例中用回车结束时,结果显示为50?怎么知道公式的计算“思维”?

9rULAIz0.rar (4.26 KB, 下载次数: 372)

[此贴子已经被作者于2004-10-22 9:50:53编辑过]

点评

知识树索引推荐内容位于:5-7楼  发表于 2013-9-25 10:07

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-10-21 13:35 | 显示全部楼层

谢谢一意孤行,经你一提醒,才知道双层括号是有用的,要不F9后,就得不到结果了。

对于内部已经含有数组的公式,是否必须用数组公式的组合键来结束输入?

本例中用回车结束时,结果显示为50?怎么知道公式的计算“思维”?

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-10-21 16:02 | 显示全部楼层

论坛数组高手很多的,为什么没人帮帮我?

对于参数中已经含有数组的公式,是否必须用数组公式的组合键来结束输入?

本例中直接回车结束时,结果显示为50?怎么知道公式的计算“思维”?

TA的精华主题

TA的得分主题

发表于 2004-10-21 23:43 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
以下是引用办公之星在2004-10-21 16:02:00的发言:

对于参数中已经含有数组的公式,是否必须用数组公式的组合键来结束输入?

本例中直接回车结束时,结果显示为50?怎么知道公式的计算“思维”?

第一个问题得看数组的具体情况:

以你的例子,引用了单元格区域并进行计算,是要按三个键,但全部使用常量的话不用,如:=SUM({5,5,1,2}*{1,2,3,4})

结果显示为50是只计算了A1:=SUM((A1*{1,2,3,4}));

如果你使用xp或以上版本,可以在[自定义]——[命令]中拖一个[公式求值]的按钮到常用工具栏,可以一步步查看公式的求解过程。

TA的精华主题

TA的得分主题

发表于 2004-10-22 00:28 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
以下是引用chenjun在2004-10-22 0:12:00的发言: 不是“结果显示为50是只计算了A1

是哩是哩,没细看。

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-10-22 09:20 | 显示全部楼层

以5000多帖子而得到一个精华,代价是够大了,但我觉得非常值。

我来论坛,主要是爱好,主要是想学习,而且我已经得到了很多很多。这儿比现实温暖多了,老头也需要温暖,呵呵。

感谢chenjun大师。

TA的精华主题

TA的得分主题

 楼主| 发表于 2004-10-24 20:15 | 显示全部楼层

这几天正在学习数组公式,感触很深。接触数组公式真是太晚了。

用多种方法测试了chunjun的说法,即修改A1:D1的单个数值,移动公式的水平位置,移动被引用区域的水平位置,全部符合。特别是,当被引用区域与公式在纵向上没有重叠时,公式直接返回#VALUE!。

这是一个插曲,数组公式还是用三键组合结束吧。

再次感谢chenjun的教导。

TA的精华主题

TA的得分主题

发表于 2004-10-22 10:39 | 显示全部楼层

我记得第一次告诉别人说,有网友 叫办公之星,大家的第一反映就是:这个人是搞推销的。你可别让他成为你的好友。

瞧瞧。。你这精华多值呀。。。

TA的精华主题

TA的得分主题

发表于 2004-10-22 00:21 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
还有一点,=SUM(A1:D1*{1,2,3,4))为什么要用数组公式的方式输入,并不是因为内部已经有了一个常量数组,而是因为A1:D1*{1,2,3,4)这里的*运算是要用数组运算的,而被运算的参数并不是全部的常量数组。

TA的精华主题

TA的得分主题

发表于 2004-10-22 00:12 | 显示全部楼层
不是“结果显示为50是只计算了A1:=SUM((A1*{1,2,3,4}))”,看我的数组的特殊用途一贴中讲的隐含的交叉引用,不以数组方式输入时,A1:D1在公式中是指A1:D1和公式所在列的交叉单元格引用,那就是B1(因为公式在B列),所以公式就变为=SUM(B1*{1,2,3,4}),因为后面乘的是数组常数,所以直接回车可以先计算出4个元素的数组,SUM再总和是50,可以改变A1:D1的每个格中的值来验证我的看法。 所以我认为一个数组公式是不能随意用回车直接结束的,如果你确实想用数组就不要多想均按ctrl+shift+enter三键结束,这样可以避免很多不可预知的结果。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-25 02:25 , Processed in 0.045890 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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