魔方网表 让信息化更简单

 找回密码
 注册
查看: 6832|回复: 15

[资料] 我们一起学习函数与公式(连载)

[复制链接]
ygq1968 发表于 2011-3-22 13:54:42 | 显示全部楼层 |阅读模式
本帖最后由 ygq1968 于 2011-3-22 14:00 编辑

前言:网表里面用的公式都是和excel函数公式通用的,对于函数公式不熟悉的朋友可能会很头疼,从excel H 转来这篇文章希望对大家有所帮助(感谢作者).


从今天开始,我会花一定的精力来耕耘这个帖子,争取让她成为大家学好函数公式的一个筑基好帖。让更多的人来了解函数公式,来感受函数公式的魅力,来分享函数公式给我们带来的快乐。

    在身边同事的心目中我是函数公式的高手,其实我掌握的函数并不多,对单个函数的挖掘也并不十分透彻,于是我也很少能写出比较精妙的函数公式,甚至想在函数公式的竞赛区捞点分都比较困难。

    看到这里也许你比较失意,甚至有点沮丧--这家伙自己都不怎么样,看来也学不到什么东西---,当然也有些嗅觉特敏锐的同学,一定感觉到这里将来一个小小的转折。是的,看问题我们需要经常变换着角度来看,大家也可以把上面这些消极的信息转换成积极的:要成为函数公式高手,并不需要掌握一大堆的函数,也并不要求对单个函数有特别深入的研究。

    开心吗?开心就鼓鼓掌吧,呵呵。
   
    其实,这一点也不假,而且事物是相通的,打斯诺克就是一个很好的例子,一个斯诺克高手的厉害不在于他的某一项技术(比如远台强行拉杆、全台直线球精准度),也不要求他精通各种杆法,他所擅长的是使用自己熟悉的杆法,合理的控制母球,在不经意之间就拿下一个高分,而中间似乎都没有一个特别精彩的进球。
  
    函数公式有很多问题我不明白,有很多知识我也缺乏,但有一点是肯定的,我会将我所知道的毫无保留的传授给你,而且我确信:当你真正掌握了这些知识,就为成为一个函数公式的高手打下了坚实的基础,而是否能成为真正的函数高手就看你是否愿意帮助大家了!

    开心吗?开心就再鼓点掌吧,呵呵

    本贴我定位为筑基帖,使用“筑基”两字我是想以练功的方式来讲函数公式的学习,希望能带来一点新意。
   
    本贴是迎接刚刚从基础版转战而来的朋友的,所以我会从基础讲起,并倡导使用平实的函数公式,说实话很精妙的函数应用我自己都不太会,呵呵。
 楼主| ygq1968 发表于 2011-3-22 13:56:38 | 显示全部楼层
==========================本贴目录===========================



初学07版的相关问题

调整版本优先级-------------------------------------------532

查找07版中的命令位置---------------------------Office Online

开帖闲语---------------------------------------------------1
基础心得篇
桩功练习---------------------------------------------------3
函数初识---------------------------------------------------6
自学函数---------------------------------------------------8
编辑公式之公式中的字符------------------------------------11
编辑公式之鼠标点选----------------------------------------12
编辑公式之函数提示工具------------------------------------14
编辑函数公式的策略----------------------------------------15
审核公式--------------------------------------------------16
飘逸的剪切------------------------------------------------18
璀璨的项链,灵动的挂坠------------------------------------19
格式转换--------------------------------------------------59
“功能性”一词理解---------------------------------------122
形参表达中的玄机-----------------------------------------154
形参表达中的玄机-续--------------------------------------177

闲谈错误值-----------------------------------------------191

闲谈错误值-续--------------------------------------------210

玉不琢不成器---------------------------------------------224

君君臣臣、父父子子---------------------------------------228

嵌入式应用篇
名称

上天的眷顾-名称1-----------------------------------------247

用活名称的秘密-------------------------------------------254

名称之名花无主-------------------------------------------267

名称之谁人不识君-----------------------------------------278

名称之栖息地---------------------------------------------298

谁人不识君补充及用活名称演练-----------------------------307

SUMIF复杂逻辑解析-插曲-----------------------------------320

相约在“公式记忆式键入”---------------------------------324
条件格式

条件格式秀-----------------------------------------------330

桩功之地址引用格式---------------------------------------331

桩功之心系他人-------------------------------------------254

桩功之泽被天下-------------------------------------------355

桩功点评及思维上的进阶-----------------------------------360

规则管理器探秘-------------------------------------------386

绚丽落幕-------------------------------------------------391

数据有效性

初识数据有效性-------------------------------------------423

数据有效性桩功-------------------------------------------473

公式切入口-----------------------------------------------505

管理面板-------------------------------------------------549

应用两三例-----------------------------------------------563

筛选

筛选之一见倾心-------------------------------------------571

筛选不重复记录-------------------------------------------581

条件区域语法---------------------------------------------590

关键字之亲密接触-----------------------------------------600

关键字之亲密接触续---------------------------------------648

移花接木-倒打一钯----------------------------------------783
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 13:57:21 | 显示全部楼层
桩功练习

     练拳不练功,到老一场空。连太极是从桩功开始的,这里我也借鉴一下。此处介绍的这个“桩功”是贯穿整个函数公式的学练进程的,算是一种基础的能量流,主要是要体会、领悟公式中单元格的引用格式对公式在复制、拖拉,以及日后在条件格式、数据有效性、名称中使用时的规律性。这个是比较容易领悟的,但需要一定的演练才能将妙处谨记在心,进而能所心所欲的使用。
     
     新建一个工作簿,并在其中一个工作表中码上如下文本“体悟公式中单元格的不同引用方式给公式复制、拖拉带来的影响”,如下图所示。


然后在一个空白单元格中输入 = a1,进行拖拉公式,观看其效果,并修改尝试不同的引用方式,如 =a$1,=$a1,=$a$1,其中不同单元格引用方式的切换可以使用F4功能键,请体悟其区别。
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 13:57:50 | 显示全部楼层
函数初识   
     
     函数,是意味着我们必须编程吗?
     初识函数的时候我自己确实有过这样的担心,因为大学时学编程语言做的最多的就是写函数,于是听到函数一词还是挺紧张的。不过接触函数以后,我欣喜地发现此处的函数公式不是编程,更像是一堆积木,我们要做的就是根据逻辑将这些积木进行拼装组合...
     函数可以看成一个处理器或说一个黑箱,我们只要关心它的输入与输出,对里面的具体实现我们无需关心。这些黑箱能对输入进行某种处理,最后输出结果,这些输入就叫参数(概念上类似数学里函数概念中的自变量),各参数之间用半角的逗号","来划分,输出就是函数返回值,而黑箱可以用一对半角状态的括号“(”,“)”来表示,比较形象,一来是将参数包裹起来,而来就是表达内部处理对外层函数(涉及嵌套时)来说是不可见的,是透明的(这点比较重要)。当然拉,人有姓,树有名,为了对这些黑箱起个标识作用,就在括号之前贴上了“标签”,这个标签就是函数名。函数名除用于标识外还起到一定的功能描述作用。

     当然啦,就像一个人回到古代,即使用尽最贴切的比喻也难以让古人对三明治有真切的认识,最好的最直接的方式就是带块三明治,然后让古人尝一口,然后告诉他,这就是三明治。如此,即使了解不是太全面,那也一定真切。现在我们就来咬一口我们的三明治。

      拿vlookup函数开刀。大家可以下载附件,以更好的理解。同时看下图,请尝试对以上概念进行对号,以明晰概念。

当然拉,这只是让大家看了下三明治的解剖图,要真正咬它一口还请劳驾下载附件,完成里面的任务。相信这会给你带来真切的体会。
      
      学习函数,重要的一点就是练,直接去做例子。这回给你带来丰富的感性认识。当然,光练还不够,还需要悟。悟,具体怎么做呢?最初级的,可以用自己的语言,结合其参数来描述这个函数的功能,使得看到这个函数,就能理解各参数的意义,不用去记住整个语法,但碰到了就能知道怎么使用...切记,不要去背,只要学会对应就行了,尽可能地减轻记忆的负担。
      上眼,下图就是给大家准备的三明治,呵呵,咬它一口吧。
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 13:58:27 | 显示全部楼层
自学函数

     如果把编辑公式比作造句,那么函数好比组成句子的词汇。如果在一个句子中遇上一两只拦路虎就会对理解造成一定影响,虽然可以揣摩,但毕竟有点隔靴搔痒,尤其大家刚学函数,碰到这样或那样的拦路虎的几率还是非常大的,那怎么办呢?
     读书时对付此类拦路虎的方式就是备一本字典,现在也差不多,不过我们用的是帮助。怎么用呢?比较简单,比脑筋急转弯“把大象装进冰箱”要容易那么一点,少一步。
     把“大象装进冰箱”大致要三步,分别为打开冰箱、将大象放进冰箱、关上冰箱,我们这里只要两步:定位函数、调出对应的帮助。
     哈哈,等于没讲,呵呵。
    在“初识函数”中提过,函数就是一个黑箱,定位函数就是要找到那个黑箱,而黑箱就是那一对括号“(”,“)”。所以第一步要做的就是将光标定位到对应函数的括号内部。此时,EXCEL就会弹出对应的“函数提示工具”(这个东西非常重要,是编辑公式的趁手利器),就是一个“函数结构示意”,如下图所示。


     
     
     单击其中的函数名,就会弹出对应的帮助文档,如下图所示。

      不过现在想来,初次见面还是要重视一下,大略看一下整个语法讲解也是好的,是否掌握倒在其次,主要混个脸熟。碍于时间,就不在上图标示中修改了

     
     当然,要查看函数帮助,还可以直接按F1调出帮助窗口,然后再搜索栏中输入对应的函数名即可。当然啦,方法不在于多,大家只要选一种自己的方式即可。本人喜欢直接在单元格公式中定位对应函数,然后单击“函数提示工具”中的函数名的方式来查看对应的帮助。
   
     查看帮助时尽量以解决当前问题为度,不要想着把帮助中的各种细节都掌握。欲速则不达。运用函数以解决实际问题为首要,当实际应用时发现新的问题,这时带着问题再看帮助就能牢牢的记住其中细节的意义,进而提高对这个函数的认识...多磨砺几遍,这些细节就不需要去记了,不用记就不会忘。

      要真正咬一口三明治,那么还请下载附件,直接在单元格上演练一把。里面虽然有很多函数你不认识,没有关系,你可以揣摩,也可以查找帮助,尽可能的克服这些拦路虎。碰到哪个函数就消化那个函数,当然这里的消化层次定位在能应用其基本功能。
      
      掌握了“自学函数”的方式,那么应用时只要记住函数名就可以了,函数名一般与其功能对应,因此记忆量锐减,得到函数名我们就能顺藤摸瓜掌握这个函数的基本用法,当然啦,最好是看到这个函数,根据函数提示工具就能摸索着使用这个函数。如果每次都要求助帮助,那么在思路上就会不断打断...
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 14:00:44 | 显示全部楼层
编辑公式之公式中的字符

        公式中功能性的字符,比如表征黑箱的左右括号"(",")",间隔参数的逗号",",用来封装文本的双引号“"”等等,最好都使用半角状态的字符。虽然,有些时候EXCEL会帮我们进行智能的转换,但养成好习惯还是值得的。实战时,将输入法切换至英文状态即可。而这一法则,即"功能性字符使用半角状态的字符"不仅仅适用于公式,养成习惯必将免去不少麻烦。

        初学时,另一个常犯的错误就是...卖个关子,看这个公式,大家看了就知道,也许你也同样犯过错误,呵呵
                                  “=if(a1>60,及格,不及格)”
        刚开始,我左看、右看我,上看、下看,可是我怎么看都没有发现哪里不一般?不一般....
        但是,Excel返回错误值NAME?
        EXCEL是说,公式里用了名称(NAME)?,但它怎么就没发现定义过这个名称,问我是否搞错了?当然,刚开始,看到错误是不会去理会的,错了就直接盯着公式看,看看哪里是否多了什么头发丝,呵呵。其实,其实这里"及格"、"不及格"这两个参数少了双引号来封装。当缺少双引号封装时,EXCEL就会将其当成“名称”处理,而检索“名称”列表如果未发现有此名称,就报上面的错误了。
        这种错误初学时会犯,即使熟练后待头昏脑胀时依旧会犯,而且还查不出错误来,呵呵。所以这个习惯一定要养成。顺便透露一下,真正的"名称"在编辑公式时字体是彩色的,那些单元格引用也是彩色的,所以鲜亮的一般是没有问题,我们查错误时可以把重点放在那些黑白的字符上,看看是否缺了双引号“"”,另一种可能就是把函数名拼错了,不过同样符合上面的方向,函数名都是黑白的
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 14:01:04 | 显示全部楼层
编辑公式之鼠标点选

        编辑公式,初学函数时会发觉编辑公式是一件头疼的事情。码字!尤其要输入大量类似“$A$1”的单元格引用地址时,更是叫苦不迭!其实,编辑公式并非一兵一卒都需要纯手工输入,鼠标、“函数提示工具”,复制粘贴、F3粘贴名称(先可以不理会这个概念)、等手段都可以极大的提升编辑效率。

        
        例如上图F1单元格中的公式:“=A1+C1*E1”,这是一个非常简单的公式,但如果每个字符都需要手工输入,那么也是件繁琐的事情,当遇到公式字符几十甚至上百时更是件苦参事。我相信很多同学不怕苦,这很好,但有些事情还出力不讨好的。对于上百字符的公式,如果纯手工码字方式来编辑,那么输入差错就会让人崩溃...公式会不断报错。

        其实,这个公式可以如此编辑:F1中输入“=”,进入公式编辑状态,用鼠标单击单元格A1,此时字符A1被直接添加至F1单元格中光标活动位置,此时公式变成:“=A1",而活动光标顺延其后,这里的关键就是使用鼠标单击动作替代了输入字符 A1,这样极大的提高了输入准确率,尤其当需要变换单元格引用格式,结合F4功能键,就能简化 "$" 的录入。依照该方法,可以比较快捷准确的录入上述公式。详见动态图:


        使用鼠标点选单元格来提取单元格地址,除了便捷外还有一个特点就是格式准确。其格式准确的优点在下文介绍INDIRECT函数时还会讲到,是一项非常实用的技巧。
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 14:01:37 | 显示全部楼层
编辑公式之函数提示工具
手术台可以用来砧板,但只把手术台拿来当砧板就不能物尽所用了。前文介绍,通过"函数提示工具”的函数名可以用来访问函数帮助,但“函数提示工具”的作用却远不止于此。
        编辑公式时,在输完函数名及其左扩号时,对应的“函数提示工具”就会弹将出来,如果没有那很可能是你输入的函数名有误(这个也很重要,不是吗,呵呵),并且第一“形式参数”字体加粗变黑,当输入“,”后,第二“形式参数”加粗变黑。这一点在编辑嵌套关系比较复杂的公式时相当有用,有定位指示的作用,否则自己都会迷茫,不知道在编辑哪个内容了。

         请看下图,注意输入函数的"("时弹出对应“函数提示工具”,当输入函数的")"时关闭对应的“函数提示工具”,(如果有)弹出外层函数的“函数提示工具”,当输入参数分隔符“,”号时,相应的提示工具的形式参数字体加粗变黑。



        以上这点只要心细留意就会发觉,作用方向为编辑公式对“函数提示工具”的影响。反方向的应用同样具有极强的实用性。单击“函数提示工具”上的形式参数,就会选定对应的参数字符,这是一项非常有用的功能,不仅可以用来审查嵌套层次是否符合编辑思路,如下图所示:

同时使得可以直接使用CTRL+C来复制代码段。如果在同一公式中对某段代码要多次使用,那么这是相当有用的。虽然可以使用鼠标来手动选中目标代码,但这大大增加了出错的概率,而且会打断思路。---这是个小技巧,但非常实用。如下图所示。


        插一句,让我在没有“函数提示工具”的EXCEL版本上编辑公式,我常常崩溃...写完公式后就被拖入无尽的查错恶梦中。

        F3功能键,按F3功能键就能弹出当前可用的名称(“名称”可以理解为一个变量,封装了一个公式),然后就可以直接使用鼠标选取需要的名称到正在编辑的公式中了。这么做同样是提高了录入时的准确率...同时,另一个好处依然是不会打断思路,因为不用去思考到底为某个特定功能的公式取了什么名字。

        这里提到了名称,蜗牛为梦想而生,对于名称我的感觉就是“名称”为函数公式而生。大家先有个印象,以后碰到了要和名称多亲多近,搞好关系。名称用多了,名称会保佑你的!
        
        最后再介绍一个功能键,F2,F2的功能就是进入编辑状态,虽然在单元格编辑公式时显示不出有什么用,当在基本菜单功能的对话框编辑公式时就比较有用。省去了腾出手去控制鼠标进入对应公式编辑框中,这看上去没有什么,但相信我,以后你会觉得很好用的。
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 14:02:59 | 显示全部楼层
编辑函数公式的策略

        关于编辑函数公式前面已讲了函数公式中的字符选用、码字、审核结构的技巧,这里将一下策略。对于比较简短公式策略师用不到的,当需要编辑的公式比较复杂,需要中间打断一下的时候策略就比较有用。
        这里的策略是指构建函数公式时的一种停顿处理。在编辑一个复杂的公式时,如果没有编辑完成,但又已经编辑了很大一段,这个时候如果确实需要停顿一下也是很正常的。但这个时候按公式编辑栏的√吧,直接报错,按×吧,先前努力付之东流...进退不是,甚为苦恼呀。
        如果单纯是需要停顿,有一个比较简单的方法,方法简单,但比较解决问题,在公式前导符“=”之前插入一个空格即可。如此,单元格的格式属性就变了,原先是功能性的公式,现在就变成了普通文本,这样就为中场休息提供了保障。也许有些同学会说,“倒,这也算技巧?”,呵呵,确实比较简单,但还是挺有用的。
        第二,不是时间上需要停顿,而是思维上需要停顿,这个也是很正常的。在写一个比较负责的条件公式时,分支多,层次深,很难一下子把公式全都书写到位的,这个时候可以使用“空文本”的方式先来填充,或者使用一段有意义的字符串先来占一个位,这个也是非常重要的。这样就在思维上将一个复杂的问题切割成几块来解决,降低了思维上的难度。
        在编写函数公式的过程中,及时将完整的可重复利用的模块用名称封装起来也是值得提倡的。可以先有个印象,以后介绍名称后可以尝试。在书写复杂的公式时,你会对这句话有深一度的了解。那时很可能先把小的逻辑模块封装好,再使用这些小模块来堆砌我们的函数公式的。

===========================
此处没有补上贴切的图,征集呀....因为根据经验,后来自己是没有心思处理细节的,不过也不一定,呵呵
回复

使用道具 举报

 楼主| ygq1968 发表于 2011-3-22 14:03:28 | 显示全部楼层
审核公式

        公式编辑完成,但EXCEL一个劲的报错,这个时候就需要审核公式了。这时的主要问题就是函数结构层次错误,具体的说就是那些左右括号所在的位置和预想的不同,导致语法审核不通过。比如说,IF函数它应该有三个参数,那意味着它的括号内部应该只有2个逗号,如果由于某种查错导致一个括号内有4个参数那么它就会报错了。
        这时就要审核函数公式的逻辑层次了,或板块层次。使用什么工具呢?---“函数提示工具”。可以从最外层函数开始,利用单击形式参数直接选中对应代码块的特性,查看各形式参数的结构布局是否符合要求...然后依次逐层剥茧,很快就能找到错误所在了。这是个小技术,但非常有效,多使用几次提高信心后效果更佳!
        此处征集使用该方法解决嵌套错误的实例!
        当然,要尽量避免这类错误还是有方法的,就是养成良好的书写习惯。每输入一个函数,输入左括号后直接输入右括号,然后再填充参数。这样就会大大降低此类错误的发生。当然,没个人都有自己的喜欢,这个不强求。
        如果审核通过,但返回值与预想有差别,那么依然使用以上手段,首选查看函数结构是否符合要求。如果这一步通过没有问题,那么就需要使用新式武器了,F9功能键。这就是论坛中常提到了独孤九剑。

对F9,独孤九剑 如果没有感性认识的话,请看下图,这是热心的 Fehr 提供的


        这里提一下,在EXCEL中对于公式审核有很多工具,我曾经也使用过其中的“公式求值”,但接触F9功能键后我就只用该工具了。理由:简单方便,让我觉得自己是一个剑客,而不是一个机械化工具的操作员。工具的关键不是在于它有多强大,而是用得趁手,简单有效。伏羲造八卦,只用了3位二进制数字,用了最简单的符号,因为太过复杂的东西对大多数人来说是没有意义的。这里也是一样。至少到目前为止,所有的审核,纠错我就只使用以上这两个主要工具。
        又为大家节省了很多时间爱你学习哪些复杂的审核工具。好在我们只求实战,如果考试的话估计要吃亏的,但考试真那么重要吗?
        F9的使用依然是和手术台(函数提示工具)密不可分的,手术台结合鼠标为其定位攻击方向,锁定目标(直接抹黑选定目标),然后直接F9执行运算,查看是否返回错误值,或者返回值是否合理。F9和手术台绝对是天生一对,可谓人为鱼肉,我为刀俎呀。
        此外,作为一个剑客,还需要犀利的目光。进入单元格编辑状态时,公式中的各成分会着上五彩的霞光,同时长城内外,大河上下,目光所及,那些被公式引用的单元格及单元格区域也将淡妆浓抹,光艳照人。凭借这些可以查看,公式的引用区域是否正确,公式成分是否有误...
        这里提到的工具相当简单,但假以时日不断磨练很快就能练就一身厉害的厨艺,为你的函数公式历程增添光彩。
         需补充一些图片让其更加精彩。
====================================================================================
配合使用 函数提示工具 和 F9 可以将逐层对逻辑块求值,这里可能又涉及一个回退的问题,就是怎么将 F9求值结果返回为原始公式代码? 记得可以使用CTRL+Z,另一个更彻底地是按公式编辑栏中的 叉叉 ,这样一次性返回到原始状态--即纯函数公式状态。其中那个 单击 叉叉×,可以用 ESC键替代。
这些都是小技巧,但很实用。
回复

使用道具 举报

fyzzg 发表于 2011-3-23 09:22:49 | 显示全部楼层
好帖子!!!!!!!!!!!!!!!!!!1111111
回复

使用道具 举报

pzh130 发表于 2011-3-27 16:40:27 | 显示全部楼层
咦~~ 这是胡哥的帖子么。。。
回复

使用道具 举报

flashbay 发表于 2011-6-15 00:14:36 | 显示全部楼层
精华咯 受教,XIEXIE,需要实践
回复

使用道具 举报

Alex 发表于 2012-2-10 10:55:11 | 显示全部楼层
哇呀呀,好帖子,相见恨晚啊
回复

使用道具 举报

wyx 发表于 2014-12-24 13:19:44 | 显示全部楼层
呵呵呵,只会同工作相关的那几个十几个,,加减乘除的倒是用的不多。。
回复

使用道具 举报

zeronet 发表于 2019-10-24 09:46:34 | 显示全部楼层
楼主给力,大赞~~~~~~~~~~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则


Archiver|手机版|小黑屋|魔方软件 ( 京ICP备08008787号 )

京公网安备 11010702001722号

GMT+8, 2024-4-29 04:05 , Processed in 0.072194 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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