问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Excel中进行自定义函数的设置技巧

发布网友 发布时间:2024-06-01 14:58

我来回答

1个回答

热心网友 时间:2024-07-28 23:42

在工作中有时会遇到在编写公式时,找不到适合的EXCEL内置函数,这时就可以考虑使用自定义函数了。今天,小编就教大家在Excel中进行自定义函数的设置技巧。
  Excel中进行自定义函数的设置步骤
  下面通过一个例子来学习简单的编写自定义函数
  例:下面表格中需要计算一些三角形的面积
  B列是底边长,C列是高,要求在D列通过公式计算三角形面积。
  (通常我们会在D3单元格用公式 =B3*C3/2 来计算,然后把这个公式向D列下方拖动复制,得到其他公式。这只是一个简单的例子,通过它来学习编写简单的自定义函数)
  1、打开VBA窗口
  按ALT+F11调出VBA窗口,插入一个用户模块。
  2、编写代码
  通常自定义函数是用function命令开始的,在这个命令后面给它指定一个名字和参数
  把下面这个自定义函数代码粘贴到刚插入的用户模块中就可以使用了。
  Function sjxmj(di, gao)
  sjxmj = di * gao / 2
  End Function
  这段代码非常简单只有三行,先看第一行,其中sjxmj是自己取的函数名字,括号中的是参数,也就是变量,di表示“底边长”,gao表示“高”,两个参数用逗号隔开。
  再看第二行,这是计算过程,将di*gao/2这个公式赋值给sjxmj,即自定义函数的名字。
  再看第三行,它是与第一行成对出现的,当你手工输入第一行的时候,第三行的end function就会自动出现,表示自定义函数的结束。
  3、使用自定义函数
  回到EXCEL窗口,我们在D3单元格中输入公式 =sjxmj(b3,c3) ,就会得到这一行的三角形面积了,它的使用方法同内置函数完全一样。
  通过上面例子可以了解自定义函数的编写和使用方法,下面再介绍一个稍微复杂点的自定义函数。
  经常对数据进行处理的朋友可以会遇到多条件查找某一个数据,一般这种情况需要编写“数组公式”来解决,公式较长,也不易理解。
  比如下面统计成绩的表格,需要根据A1:D7的成绩表,统计出两门功能都在90分以上的学生人数。
  大家可以看到在H3单元格中的公式比较长,理解起来也有一定难度。
  我们通过自定义函数也可以得到正确结果,函数代码如下:
  Function 统计(a, b, c, d, e)
  For i = 1 To a.Rows.Count
  If b = a.Cells(i, 1) And a.Cells(i, c) >= e And a.Cells(i, d) >= e Then
  统计 = 统计 + 1
  End If
  Next
  End Function
  这个函数用了五个参数(因为涉及到一个区域和四个条件)
  参数a表示要统计的区域,在此例中为B2:E7
  参数b表示要统计的是哪一个班级,在此例中为G3单元格
  参数c表示数学成绩相对于区域第一列向右的列数,在此例中为3
  参数d表示数学成绩相对于区域第一列向右的列数,在此例中为4
  参数e表示分数,在此例中为90分
  提示:要注意参数c和d“相对”于“区域”的列数,并非是从A列开始向右的列数。
  把上面这段代码也粘贴到用户模块中就可以使用了
  回到EXCEL窗口,在H3单元格中输入公式 =统计($B$2:$E$7,G3,3,4,90) 就可以显示正确结果了。
  Function 统计2(a, b)
  For i = 1 To a.Rows.Count
  If b = a.Cells(i, 1) And a.Cells(i, 3) >= 90 And a.Cells(i, 4) >= 90 Then
  统计 = 统计 + 1
  End If
  Next
  End Function
  在表格中的H3单元格中输入公式 =统计2($B$2:$E$7,G3) 就可以了。
  从上面可以看出,自定义函数可以使用“汉字”做为函数的名字,方便记忆,也可以根据实际情况对参数进行简化。
  通常这种时候需要在H3单元格使用数组公式 =SUM(IF(($B$2:$B$7=G3)*($D$2:$D$7>=90)*($E$2:$E$7>=90),1,0))
  提示:
  如果我们的成绩表格式是固定的,各科目成绩位置相对于区域也是固定的,而且要统计的分数也是固定的90分,就可以在自定义函数中将参数的数量减少到两个,如下:
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ipo过会什么意思 ipo已过会是什么状态 写一篇演讲稿关于中学生应该如何管理时间的作文用英语写的主人公是... 最新非法行医罪既遂量刑标准是怎么样的 行医罪既遂能判多少年 ...别人随便说的一句话都想很多 往坏处想 好累……怎 ...好累 心态不好 总是想法偏激 把人和事往坏处想 想的复杂 很累 不乐... ...什么都往坏处想 很敏感 想很多 我不想这样 想改变下心态 我这样 因 ... 苏新皓为什么叫玺哥 苏新皓什么时候进的时代峰峻 奈思团购是正规平台吗? excel自定义函数的方法 如何自定义函数 莱格啤酒的酿造流程有哪些? excel自行创建自定义函数的教程 面包胚里加的糖化麦芽粉是什么? 10万元的执行费多少 15个月宝宝吃韭菜饺子可以吗 十个月宝宝能吃韭菜馅饺子吗 安川机器人程序最大多少行 不过户的话我想以后再卖房子有没有影响啊,– 安居 婚后买的房子不是自己的名字还没过户属于夫妻共同财产吗 在南宁市人力资源和社会保障局 打印个人社保证明为什么会显示"电子... 牙龈天天出血? 在b站上如何屏蔽某个tag? 我想问一下牙齿经常出血是怎么回事啊?这会不会对身体有很大伤害的... 在你看来,习惯性迟到的人是什么心理? 风钻配多大的空压机好用呢? 打工好还是学美甲好 澳洲圣保禄国际学院教学质量如何 Excel自定义函数添加和使用方法详解 excel中编写自定义函数的操作方法 excel创建自定义函数的方法 日照到岚山的汽车,早上最早一班是几点 最下面的配合物叫什么名称? 语音试音文本༈ 跪求音响试音歌曲 ~!!! 霏欧纳几级进化 自己亲姐,明天中秋节过22岁生日,作为妹妹的我应该给她发多少红包合适呢... ...别的维生素C都是从石药集团买的,为啥销售人员还说天然 海运提单中术语“ CBM"是指什么? 新房除甲醛的六大误区有什么 新房除甲醛,一定要小心这几种误区,大部分人都中枪了 除甲醛的误区有哪些? fa站怎么设置中文 电饭煲蛋糕用花生油可以吗电饭煲蛋糕能不能用花生油 丹拿是什么牌子? nodal音箱如何?nd993功放dream2080音箱怎么样? 谁知道,从古到今。各各历史时期,时代的先后顺序(也就是各各朝代的名字... 正版孤岛危机3经常玩一阵子就闪退,我电脑是微星的,配置没问题,大神求 ...