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

Excel表格中如何自定义函数

发布网友 发布时间:2022-04-23 07:57

我来回答

4个回答

热心网友 时间:2022-05-22 09:05

VBA之自定义函数
这一贴说的是自定义函数。Excel本身已自带了很多函数,供我们使用,但有些问题用原有的函数解决起来很复杂,甚至是*为力,但有了VBA,可能就可以现实。
怎样自定义一个函数?下面我们建一个名为RangeCount和函数,用来统计给定单元格数量。上贴说过怎么插入一个宏(子程序),其实细心的朋友就会发现,里面有一项函数的选项,就是用这个添加了!键入你需要的名称RangeCount,即会自动生成一个函数的头Public Function RangeCount()和尾End Function!这时大家可以知道,子程序都是以Sub关键字开头,而函数是以Function关键字开头。
怎样给自定义函数传递参数?用过Sum函数的朋友都知道Sum的用法,在单元格中键入=Sum(A1:A10)就能对A1:A10进行求和,那么怎么让我们的自定义函数也有此功能呢,其实很简单,只要在Function RangeCount()中的(与)之间加入即可,象现在我们要给这个自定义函数传递一个单元格的参数,即在()间加入XRan As Range即可。其中XRan就是我们给这个参数设定的名称,As 是关键字,而Range就是给定参当数的类型(单元格类型),更详细的说明可以参见VBA的帮助(上贴有说明怎么用帮助了吧:))。
怎么样自定义函数加入功能?其实也和子程序一样,在函数的头Public Function RangeCount()和尾End Function之间就可以加入代码,我们这个函数的代码只有一句:RangeCount = XRan.Count
怎么样让自定义函数返回值?从上面的例子看出,只要将函数的名称设定为需要返回的值即可。
怎么当前工作表中使用自定久函数?使用自定义函数的方法其实和一般函数的方法是一样的,在单元格中键入=RangeCount(A1:A10),即可以得到值(10)!当然,也可以通过菜单插入/函数,在类别中选择用户自定义里找到你自定义的函数。
怎么在工作表里使用别的工作表里的自定义函数?从菜单插入/函数,类别中的用户自定义里,可以看到,如果这个自定义函数不是在当前的工作表里的,函数会变成——文件名.xls!函数名了,这样我们使用上面的自定义函数就变成=Book1.xls!RangeCount(A1:A10)(设我们刚才保存文件为Book1)。
怎么样在任何工作表中使用自定义函数?自定义了函数后,每一次使用都要打开这个工作簿,不方便,那么怎么样让任何工作簿都能使用这个自定义函数呢?有两个方法,第一个就是把代码写在上面说到的个人宏工作簿中,因为个人宏工作簿都是随Excel自动打开的,那么我们就可以通过PERSONAL.XLS!函数名来使用这个自定义函数。第二个方法就是加载宏(关于加载宏的其它用法和具体说明以后还会有专门的一贴),将包含这个自定义函数的工作簿,去掉无关的内容(不去当然也行啦!)后另存为加载宏(不会不知道怎么另存吧,汗!后注!),这样在菜单工具/加载宏里,将相关项前打勾,即可使用该自定义函数,这时使用函数的方法只要直接用函数名即可,如=RangeCount(A1:A10)。
最后再说一点大家少遇到的现象:用过VBA后,大家知道在同一模块中是不能有相同名称的子程序与函数的,如果有,运行时会提示存在二义性!但在不同模块中,却能有相同甸称的函数存在,那么怎么使用这样的函数呢?从菜单插入/函数,类别中的用户自定义里,我们可以看出这样的函数变成模块名.函数名了,这样我们的使用方法就是=模块1.RangeCount(A1:A10)或=模块2.RangeCount(A1:A10)。
后注:详细的另存为加载宏的过程,点击菜单/文件/另存为,在文件类型里选择Microsoft Excel加载宏项,这时文件夹自动转到保存加载宏的AddIns,再保存即可。

参考资料:http://excelba.ookao.com/showart.asp?art_id=16

热心网友 时间:2022-05-22 10:23

点击工具栏上的E(样),最后一项就会打开函数。你可以在里面选择。也可以在单元格直接输入你想使用的函数。
比如想求和。前面几项。就可以输入=SUM(第一行的:最后一行)

热心网友 时间:2022-05-22 11:58

不行,除了自带的函数外可以自已组合,其他要用VB编写

热心网友 时间:2022-05-22 13:49

1、打开Excel程序,按键盘组合键“Alt+F11”或切换至“开发工具”功能区并点击“Visual
Basic”按钮进入VBA环境。有关开启“开发工具”功能区的方法下面将会讲解。
  2、在VBA环境下,右击“MicrosoftExcel对象”,从弹出的菜单中选择“插入”->“模块”项。
  3、在打开的模块窗口中,输入以下代码:Function三项合并计算(a,
b,
c),三项合并计算
=
a
*
b
+
c,End
Function,该代码用于对提供的三个参数进行计算,结果返回函数本身。
  4、接着返回Excel界面,在单元格中输入公式“=三项合并计算(2,3,5)”并按回车键即可得结果。
  5、当然,我们还可以通过引用三个单元格数据来实现同样的计算功能:分别在A2、B2、C2单元格中输入2,3,5,在D2单元格中输入“”并按回车键即可得结果。
  6、如何开启“开发工具”功能区
  (1)点击“Office按钮”,在打开的扩展面板中点击“Excel选项”。
  (2)接着勾选“在功能区显示‘开发工具’选项卡”项即可。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... 养宠物的人遵守规则,是不是就能和别人平安相处呢? 企业培训学到了什么 培训感悟简短 有关培训的感悟 通过培训学到什么 培训你学到了什么 领导问培训学到什么怎么回复 Excel表格中如何自定义函数? 表格里自定义的数据怎样显示设置 怎样在电子表格中设置自定义的排序 手脚发热怎么办 请问手脚发热怎么回事!! excel表格中怎样自定义排序 手脚心异常发热怎么治? office表格怎么自定义 夏天手脚发热怎么办? 手脚发烫是什么原因引起? 手脚发烫怎么回事 晚上热的我都睡不着觉 手足发烧是何原因? 手脚发热是什么原因? 手脚心总发热是什么症状? 手脚心发热怎么治? 手脚发热是什么原因造成的 hp怎么u盘启动? 手脚心发热怎么办? hP compaq 8000,如何从U盘启动,如何进到PE? 美的挂式空调哪一款性价高?求推荐 excel表格中如何自定义设置一个列表格 excel表格中可以自定义哪些单元格格式 新浪微博怎样可以在两个账号之间快速转换? 我的新浪微博登陆登成另一个账号了,该怎样更换成另一个账号使用 我的新浪微博绑定360账号 怎么解绑?求解! 请问各位高手,360浏览器微博应用怎么 退出。在别人电脑里登陆的。。 360如何同时登陆多个新浪微博账号? 怎么解除360浏览器微博帐号绑定 如果我有两个新浪微博账号~想同时登录可以吗~或者有没有软件可以方便的管理切换这两个微博~ 登陆的新浪微博怎么退出呢,或者我想换其他新浪账号该怎么操作... 请问新浪微博的账号可以更改吗? 新浪微博如何切换两个账号的登录 哪几款手机的照相功能比较好.还可以用来当望远镜? 怎样通过新浪微博切换移动设备登陆同一个帐号??? 怎样能用360浏览器同时登陆多个微博账号呀?详细方法求推荐 用在手机上拍照的望远镜哪种好? 手机拍摄用望远镜,哪个牌及型号比较好? 360账号与新浪微博账号怎么绑定? 手机拍照用的单筒望远镜哪个牌子比较好? 多摄像头手机如何通过望远镜拍照?