excel数组公式学习资料汇集.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
excel数组公式学习资料汇集

数组公式从入门到精通   对于刚接触Excel数组公式的人来说,总是会感觉到它的一份神秘。又Excel的Online Help中只有很少关于它的主题,所以这种神秘感就更强了。不要紧,只要跟着我的思路走,你很快就会看清数组公式的真面目!   数组概念 对于数组概念,大家都会很熟悉,其就是一个具有维度的集合。比如:一维数组、二维数组、多维数组。数组的表示一般为“{}”所包括(一维和二维数组)。Excel中也不例外,如果你想直接表示一个数组,也必须用“{}”括起来。 数组与数组公式 在Excel中,凡是以半角符号“=”开始的单元格内容都被Excel认为是公式,其只能返回一个结果。而数组公式可以返回一个或者是多个结果,而返回的结果又可以是一维或二维的,换句话说,Excel中的数组公式返回的是一个一维或二维的数组集合。 在Excel中需要按下 “Ctrl+Shift+Enter”组合键结束数组公式的输入。 为什么要用数组公式? 如果你的需要满足以下条件之一,那么采用数组公式技术可能会是你很好的选择方案。 你的运算结果会返回一个集合吗? 你是否希望用户不会有意或无意的破坏某一相关公式集合的完整性? 你的运算中是否存在着一些只有通过复杂的中间运算过程才会等到结果的运算? 看到这些另人费解的问题,你可能会摸不着头绪。不要紧,看了以下内容你也许就会明白了。 什么情况下会返回一个集合? 看一个简单的例子,选中C1:E3,输入“={Name, Sex, Age; John, Male, 21; Mary, Female, 20}”,按“Ctrl+Enter”组合键。 图1-1 (ArrayFormula_A01.bmp) 结果在C1:E3中看到的结果全是“Name”,而实际真正返回的结果应该是一个包含三行三列的二维数组,如何办?答案就是用数组公式。选中C1:E3,输入“={Name, Sex, Age; John, Male, 21; Mary, Female, 20}”,按“Ctrl+Shift+Enter”组合键。 图1-2 (ArrayFormula_A02.bmp) 可能你又会问,这有何用?为何不在单元格中直接输入内容,反而要这么麻烦? 这仅仅是一个例子,说明的是如何通过数组公式返回一个结果集。给你个问题,如果存在这样一个工作表:包含字段{ID, Name, Sex, Age},如何将“Sex”为“Female”的记录抽取出来 (为了打印报表,抽取的记录需要连续存放) ?这个问题将在“应用篇”里进行解答。 什么情况下会用到相关公式完整性? 什么是相关公式完整性?这仅仅是我给出的一个定义,请再回到“图1-2”,请选择C1:E3中任意一单元格,然后做随意的修改(哪怕和原先的公式一样),按“Enter”键结束输入。结果如何?修改未成功!提示“不能更改数组的某一部分”。 图1-3 (ArrayFormula_A03.bmp) 为什么会是这样呢?因为你正企图破坏相关公式的完整性。由于C1:E3中公式的数据源均为“{Name, Sex, Age; John, Male, 21; Mary, Female, 20}”,而C1:E3共用的一个公式(这与每个单元格都有相同的公式是有区别的,因为这仅仅是C1:E3拥有9个相同的公式,而不是一个!),因此,当你要单独更改其中一个单元格时,系统会认为你正在更改部分单元格的数据源,如此会导致数据源不一致的现象,从而导致与其它相关单元格脱离关系,这样数组公式就失去作用,所以系统不又允许你更改数组公式的部分内容。这样的好处是可以维护数据的完整性,做到与数据源总是有一致的对应关系。 你的公式复杂吗? 如果有如下数据,在D6单元格中求出对所购物品需要付多少费用。你会如何做?在D6中输入“=(C2*D2+C3*D3+C4*D4)”?结果正确,如果中间某个单元格地址输入错误你的结果会正确吗?如果记录不只3条,而是成千上万条,你是否会感觉到力不从心(如果不考虑单元格内字符数的限制)?如果用“图1-5”中的方法,你的感觉又会如何?(在D6中输入“=SUM(C2:C4*D2:D4)”,按“Ctrl+Shift+Enter”键结束输入。其中涉及到的技巧会在“提高篇”中讨论。) 图1-4 (ArrayFormula_A04.bmp) 图1-5 (ArrayFormula_A05.bmp) 怎么样?是否了解了数组公式?是否学会了如何使用数组公式?是否感觉到了它的一点点威力? 数组公式从入门到精通 提高篇 相信你在“入门篇”中已经学会了如何建立数组公式,同时也大致了解在什么情况下适合使用数组公式解决问题。需要说明的是,在“入门篇”中提到的使用数组公式的三种情况并不是绝对的,要视具体情况而定。 在接下来的讨论中,你将会

文档评论(0)

kabudou + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档