教你如何快速学习Excel数组公式及运用

一、课程回忆

什么是数组公式呢?顾名思义就是公式中包含数组的了,详细含义请参看前文。但这里重点提醒的一点就是,如果要使用数组公式,在编辑栏输入完公式以后一定要按下“Ctrl+Shift+Enter”组合键,使编辑栏的公式处在“{}”之中。

  二、数组公式继续深入

印象中是好几年前了,当时看过的一篇扫盲贴中,作者举的例子真是太实用了。具体细节记不太清楚了,大致意思就是使用函数计算1到100的和。这里同样以此为例。

  1.求1到100的和

  在往下看之前,大家想一下,如果让你来处理该如何来处理呢?只用一个函数解决1到100的和,当然也可以是1000、10000甚至更多。讨论具体的数值没有太大意义,此处只是希望通过此例让大家更进一步的了解数组公式的用法。

  解答:{=SUM(ROW(1:100))}

  问题分析:求1到100的和,答案是5050(小学生都知道^-^),但Excel必须是你告诉了它正确的方法,它才能知道。计算从1到100的和,实际上就是计算1+2+3+4+……+98+99+100,好了,答案出来了,在编辑栏中输入 “=sum(1+2+3+4+……+98+99+100)”。相信聪明的一定对此答案不满意,虽然能得到正确的结果,但很明显是“错误”的方法。

  要得到1到100的正确数列,最简单的方法就是使用Row()或是Column()函数,由于个人习惯,我比较习惯于Row(),所以这里以Row()函数为例。

  熟悉Row()函数:在A1单元格中输入“=Row()”,使用填充柄填充至A5,看到什么结果?是不是每一个单元格中值就是其对应的行数。

惊喜:Row()表示单前行,如果使用Row(1:100)就表示一个数组,其中包含的便是第一到第一百行的行号,即1、2、3、……、98、99、100这些数值,现在我们就把这个数组应用到公式中。

  在工作表的任意一个单元格中输入“=sum(Row(1:100))”,然后按Ctrl+Shift+Enter组合键,你会惊喜的发现,我们要的结果出现了。

2.在Excel2003中享受“SUMIFS”

SUMIF函数应该很多人都用过,非常好用。但如果遇到多条件判断的怎么办呢?从Office 2007开始,引入了SUMIFS函数,可以解决这种多条件求和问题。但如果仍然使用Office 2003怎么办呢?其实使用SUM、IF再结合数组公式即可实现SUMIFS的效果。

如下图所示,某教师有一张任教的几个班级的学生成绩表。

任务:统计出“一班”、“二班”共计多少人?

此题要如何解决?SUMIF用两次?或是COUNT用两次?这里还是演示数组公式的用法,所以先用SUM和IF组合的形式。

在任一单元格中输入“=SUM(IF((A2:A12="一班")+(A2:A12="二班"),1,0))”公式按下回车键,是不是发现结果是 “#VALUE!”,再次进入编辑栏然后按下“Ctrl+Shift+Enter”快捷键,是不是发现正确的结果出来了?

这里再次解释一下这个公式“{=SUM(IF((A2:A12="一班")+(A2:A12="二班"),1,0))}”,外侧SUM没什么好用的了,就是求()内各数的和。中间的“IF((A2:A12="一班")+(A2:A12="二班"),1,0))”的运算过程是这样的,判断A2:A12区域内单元格的值是否是“一班”,如果是则结果为1,则此公式计算的结果依次是“1、0、0、1、0、0、1、0、0、1、0”,因为第一个条件为真,第二个条件肯定就不为真了,因为一个单元格不可能同时等于“一班”和“二班”,所以第一个数组就是“1、0、0、1、0、0、1、0、0、1、0”。这时再判断 A2:A12区域内单元格的值是否是“二班”,如果是结果则为1,否则为0,所以这个数组条件计算的结果就是“0、1、0、0、0、1、0、1、0、0、 0”,中间的加号就是将这两个数组相加,也就是说最终的数组为“1、1、0、1、0、1、1、1、0、1、0”,然后使用SUM求和,结果就为7了。

从上面的图中标注可以看出,所以的公式我全部使用了数组(A2:A12这就是一个数组),并且上图上的没有使用数组公式的公式中的数组全部可以使用单个单元格替代,之所以全部列出,还是希望大家更好的理解一下数组。

   在Excel中,数组如果不放在数组公式中使用,通常数组在特定单元格中只代表与其特定单元格所对应的一个值(数组中的一个元素),放在数组公式中使用时,通常整个数组元素都会参与运算。

   三、数组公式精通

这里是一个实际工作中的例子,只是我稍微变化了一下,还是SUM应用的例子。

   需求:如下图所示,现在要统计员工张三在1号加工所有机器的“实绩”,也就是说在右侧的数据中先过滤日期为1,然后再过滤人员为张三的数据,最后统计实绩的结果。如果使用一个公式完成这一需求,你能想到吗?当然SUMIFS是除外的,因为 SUMIFS是Office 2007以后的产物。

答案:在上图所示的C2单元格中输入“=SUM((E2:E21=A2)*(G2:G21=B2)*(H2:H21))”公式,然后按下“Ctrl+Shift+Enter”组合键,你会发现想要的结果已经出现了。数组公式就是这么简单,解决问题也是这么简单。

   这次用的公式可以看出,比之前用的公式还要简单,连IF都不要了,实际上这里的“=”符号就是起到了一个类似IF的效果。

   这里再说明一下公式的执行过程,公式中E2:E21表示数组区域,这个相信已经不需要再说明了,放到数组公式中就是依次取数组中的各个数值,也就是依次取日期中的值。E2:E21=A2,实际上就是拿日期中的每一个值依次与A2中的日期进行比对,如果相等则结果为True,即1,如果不相等则为False 即为0。到了这里也许你有一点明白了,如果第一不相等,则后面的无需再继续下去了,因为公式里用的全部是“*”乘积符号,任何数乘0等于0。如果此项符合再继续判断G2:G21区域,也就是用姓名依次比对,如果和B2中的姓名相同,则为Ture,即1,如果为False,即0,继续下一个回合。如果此项也为Ture,很明显前面两项的结果为1*1=1,再乘以H2:H21数组中对应的数字,即符合条件的“实绩”,以第一个符合条件的第一条记录为例,在数组公式运行的第一个回合为SUM(1*1*234),结果当然为234了,然后再依次完成整个数组的运算,我们最终的目的就达到了。

   数组公式非常有用,效率也高,但真正的理解、熟练掌握也不是一件很容易的事。但大家记住数组中的数据是一一对应的,放到数组公式中使用时,数组中的数据会按顺序依次参与相应的运算。



  • 濡備綍瀛﹀ソExcel甯哥敤涓滆タ
    绛旓細B銆佸杽鐢ㄨ祫婧愶紝瀛︿互鑷寸敤 闄や簡灏戦儴鍒咵xcel鍙戠儳鍙嬶紙鍒鐤戯紝杩欑浜虹殑纭瓨鍦級浠ュ锛屽ぇ閮ㄥ垎浜瀛︿範Excel鐨勭洰鐨勬槸涓轰簡瑙e喅鑷繁宸ヤ綔涓殑闂鍜屾彁鍗囧伐浣滄晥鐜囩殑銆傞棶棰橈紝甯稿父鏄績浣夸汉瀛︿範鐨勪竴澶у姩鏈恒傚鏋鎮杩樿揪涓嶅埌鍒濈骇鐢ㄦ埛鐨勬按骞筹紝寤鸿鎸夊墠鏂囦腑鎵璁插厛鎵洸锛涘鏋滄偍宸茬粡鍏锋湁鍒濈骇鐢ㄦ埛鐨勬按骞筹紝甯︾潃闂瀛︿範锛屼笉浣嗚繘姝ュ揩...
  • 濡備綍蹇熷涔WORD鍜EXCEL鎬庢牱蹇熸帉鎻ord
    绛旓細鐩稿excel•word浼氭洿鍔犲緱绠鍗曪紝棣栧厛杩欎袱娆鹃兘璇村姙鍏蒋浠讹紝word鏂囨。鏇村姞鍊惧悜浜庢墦鍗般Excel锛屾洿鍔犲惧悜浜庢姤琛ㄨ绠椼傛墍浠ュ叧浜庝袱涓蒋浠讹紝鏈蹇鐨瀛︿範鏂规硶锛屼笂鎵嬮熷害锛屽彇鍐充簬浠ヤ笅鍑犵偣銆備笉绠℃槸Excel杩樻槸word锛岄兘鏄氱敤鐨勩1⃣浜嗚В杞欢鐨勬暣浣撳竷灞 涓嶇鏄痺ord杩樻槸Excel锛岄鍏堜綘闇瑕佷簡瑙f暣涓蒋浠剁殑鏁翠綋甯冨眬銆...
  • 濡備綍鎵嶈兘蹇熷濂鍔炲叕杞欢Word銆Excel?
    绛旓細鍦瀛︿範Excel鏃讹紝鎴戜滑棣栧厛搴旇浜嗚В瀹冩湁鍚湁鍝簺鍔熻兘锛岀劧鍚庡厛瀛︿粈涔堝悗瀛︿粈涔堬紝鐭ヨ瘑鍏斾竴姝ユ瑙勫垝濂斤紝鎸夌収璁″垝鍘绘帹杩涘涔犲氨鍙互浜嗭紱绗竴锛氬父瑙佺殑鍩烘湰鍔熻兘1銆佸伐浣滆〃鐨勬柊澧炪佸懡鍚嶃佸垹闄ゃ侀殣钘忓拰淇敼棰滆壊锛2銆佺粯鍒惰〃鏍硷細鐐瑰嚮寮濮-閫夋嫨瀛椾綋锛堝姞绮椾笌鍚︼級鈥斿瓧浣撳ぇ灏忊斿瓧浣撻鑹测旇竟妗嗏斿瓧浣撳榻愮殑鏂瑰紡鈥斿悎骞跺崟鍏冩牸鈥旇嚜鍔...
  • excel琛ㄦ牸鐨勫揩閫熷涔犳硶鏈夊摢浜涘憿 excel琛ㄦ牸鎬庝箞蹇熷涔
    绛旓細2銆侀変腑琛ㄦ牸鏁版嵁鍖哄煙锛岃澶氫汉涔犳儻鐢ㄩ紶鏍囧幓鎷栭夎〃鏍硷紝濡傛灉琛ㄦ牸灏忥紝鍙互杩欐牱鍘诲仛锛屼絾濡傛灉浣犺〃鏍兼暟鎹お澶氫簡锛屼綘杩樿鐢ㄩ紶鏍囧幓鎷栧悧锛熷彲浠ヤ娇鐢ㄥ揩鎹烽敭銆孋trl + A銆嶄竴閿変腑琛ㄦ牸鍖哄煙銆3銆佷笅鎷夎彍鍗曘傚湪Excel涓褰曞叆閲嶅鍐呭鏃讹紝鎴戜滑鍙互浣跨敤涓嬫媺鑿滃崟鏉ュ府鍔╂垜浠蹇褰曞叆锛屼笉浠呰妭鐪佷簡鎴戜滑鎵撳瓧鐨勬椂闂达紝鑰屼笖杩樻湁鏁堢殑閬垮厤浜...
  • EXCEL瀛︿範鍑芥暟鏈蹇鐨勬柟娉
    绛旓細鏈変笉瓒呰繃20涓熀鏈殑鍑芥暟锛岀粷瀵瑰鐢ㄤ簡銆備娇鐢ㄥ嚱鏁帮細鍑芥暟涓嶇敤锛屽氨浼氬繕鎺夈備笉浼氫娇鐢ㄦ煇涓嚱鏁帮紝灏辩洿鎺ュ幓鐪嬪府鍔╁疄渚嬶紝鎴栬呯櫨搴︾湅妗堜緥銆傛槸鏈鐩存帴鏈夋晥鐨勬柟娉曘傚墠闈㈣鐢3涓皬鏃剁殑闂锛岀敤杩欎釜鍑芥暟鎶宸э紝10鍒嗛挓灏辫В鍐充簡锛屼綘瑕佷笉瑕佸锛熸湁瀛︿範鐨勫姩鍔涳紝灏变富鍔ㄥ涔犲ソ鐢ㄧ殑鍑芥暟锛岀敤澶氫簡锛屽氨璁颁綇浜嗐傚績娉曪細瑕佸湪EXCEL...
  • Excel VBA 濡備綍蹇熷涔?
    绛旓細鎺㈢储Excel VBA鐨勭绫嶏細蹇鍏ラ棬涔嬭矾 鎯宠鍦Excel鐨涓栫晫閲屽铏庢坊缈硷紝VBA鏃犵枒鏄綘鐨勫緱鍔涘姪鎵嬨傛渶楂樻晥鐨勫叆闂ㄧ瓥鐣ュ苟闈為仴涓嶅彲鍙婏紝鑰屾槸閫氳繃瀹炶返涓瀛︿範鐩哥粨鍚堢殑鏂瑰紡锛屼竴姝ユ鎻紑瀹冪殑绁炵闈㈢罕銆傞鍏堬紝灏濊瘯鐫鐞嗚В浣犳兂瑕佸疄鐜扮殑鍔熻兘锛屽姩鎵嬫搷浣滀竴娆★紝鐒跺悗寮鍚綍鍒舵ā寮忥紝灏卞儚杩欐牱锛氭楠や竴锛氫翰韬疄璺典笌褰曞埗瀹 瀵Excel涓鐨...
  • 鏁欎綘濡備綍鑷EXCEL鐢靛瓙琛ㄦ牸
    绛旓細鏈変笓闂瀛︿範EXCEL璁哄潧缃戠珯涔熸槸鏈濂界殑锛孍XCELHOME锛岀粡甯哥殑鍘荤湅鐪嬶紝澶氱湅鐪嬭棰戯紝鍦ㄧ綉涓婃悳绱笅杞介兘鍙互缁忓父鐨勭湅锛屼紭閰凤紝鐖卞鑹猴紝鍦熻眴绛夛紝鏃堕棿涓闀胯嚜鐒跺氨鎴愪笓瀹朵簡銆傜湅鐨勪笢瑗垮啀澶氫篃涓嶅韬竟鏈塃XCEL鐨勭湡浜洪珮鎵嬶紝濡傛灉韬竟鐪熺殑鏈夊帀瀹崇殑楂樻墜锛岄偅灏遍亣鍒拌吹浜轰簡锛屽澶氳鏁欎粬浠紝杩欐槸鏈濂界殑鏈蹇鐨勯斿緞锛屽氨鐪嬩綘鏈夋病鏈夌粰...
  • excel鐨甯哥敤鎶宸
    绛旓細30銆濡備綍蹇杈撳叆鏁版嵁搴忓垪? 濡傛灉浣犻渶瑕佽緭鍏ヨ濡傝〃鏍间腑鐨勯」鐩簭鍙枫佹棩鏈熷簭鍒楃瓑涓浜涚壒娈婄殑鏁版嵁绯诲垪,鍗冧竾鍒愭潯杈撳叆,涓轰綍涓嶈Excel鑷姩濉厖鍛?鍦ㄧ涓涓崟鍏冩牸鍐呰緭鍏ヨ捣濮嬫暟鎹,鍦ㄤ笅涓涓崟鍏冩牸鍐呰緭鍏ョ浜屼釜鏁版嵁,閫夊畾杩欎袱涓崟鍏冩牸,灏嗗厜鏍囨寚鍚戝崟鍏冩牸鍙充笅鏂圭殑濉厖鏌,娌跨潃瑕佸~鍏呯殑鏂瑰悜鎷栧姩濉厖鏌,鎷栬繃鐨勫崟鍏冩牸涓細鑷姩鎸塃xcel...
  • 濡備綍瀛︿範excel
    绛旓細\x0d\x0a鎴愪负涓涓珮绾х敤鎴凤紝闇瑕佸畬鎴愪袱椤圭煡璇嗙殑鍗囩骇锛屼竴鏄啛缁冭繍鐢鏁扮粍鍏紡锛屼篃灏辨槸閭g鐢ㄨ姳鎷彿鍖呭洿璧锋潵鐨勶紝蹇呴』鐢<Ctrl+Alt+Enter缁勫悎閿墠鑳藉畬鎴愬綍鍏ョ殑鍏紡锛涗簩鏄兘澶熷埄鐢╒BA缂栧啓涓嶆槸鐗瑰埆澶嶆潅鐨勮嚜瀹氫箟鍑芥暟鎴栬繃绋嬨備竴鏃﹁繘鍏ヤ簡杩欎袱涓鍩燂紝瀛︿範鑰呬細鍙戠幇鍙︿竴鐗囧ぉ绌猴紝...
  • 本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网