中企动力 > 商学院 > excel怎么自定义函数
  • ?

    要说Excel中最有用的一个函数,它才是函数中的NO.1

    原野

    展开

    可能对于在用Excel的朋友来讲,平时使用的比较多的一个函数,那就是Vlookup函数,今天小编就来告诉大家一个Excel中最有用第一个函数,那就是Countif函数,这个函数的适用范围远远高于vlookup函数,所有把它列为最有用函数的NO.1也一点都不为过。下面我们就来学习一下这个函数。

    今天教大家这个函数主要从以下6个场景来进行学习。

    一对一对比两列数据多对多对比两列数据禁止重复输入输入时必须包含指定字符帮助Vlookup实现一对多查找统计不重复值的个数

    :场景1:一对一核对两列数据

    【例】如下图所示,要求对比A列和D列的姓名,在B和E列出哪些是相同的,哪些是不同的。

    公式:

    B2 =IF(COUNTIF(D:D,A2)>0,"相同","不同")

    E2 =IF(COUNTIF(A:A,D2)>0,"相同","不同")

    场景2:多对多核对两列数据

    【例】如下面的两列数据,需要一对一的金额核对并用颜色标识出来。

    步骤1 在两列数据旁添加公式,用Countif函数进行重复转化。

    =COUNTIF(B$2:B2,B2)&B2

    步骤2按ctrl键同时选取C和E列,开始 - 条件格式 - 突出显示单元格规则 - 重复值。

    设置完成后后,红色的即为一一对应的金额,剩下的为未对应的。如下图所示

    场景3:禁止重复录入

    禁止在G列重复录入数据:

    数据 - 有效性(2016版为数据验证) - 序列 - 输入公式

    =COUNTIF(G:G,G1)=1

    场景4:输入内容必须包括指定字符

    【例】在列输入的内容,必须包含字母A。

    =COUNTIF(H1,"*A*")=1

    :如果输入不含A的字符就会警示并无法输入

    场景5:帮助Vlookup函数实现一对多查找

    【例】如下图所示左表为客户消费明细,要求在F:H列的蓝色区域根据F2的客户名称查找所有消费记录。

    :步骤1 在左表前插入一列并设置公式,用countif函数统计客户的消费次数并用&连接成 客户名称+序号的形式。

    A2: =COUNTIF(C$2:C2,C2)&C2

    步骤2 在F5设置公式并复制即可得到F2单元格中客户的所有消费记录。

    =IFERROR(VLOOKUP(ROW(A1)&$F$2,$A:$D,COLUMN(B1),0),"")

    场景6:计算唯一值个数

    【例】统计A列产品的个数

    =SUMPRODUCT(1/COUNTIF(A2:A7,A2:A7))

    总结:总的来讲Countif函数虽然只是单一条件的计数函数,但它在与其他函数搭配使用的时候,那他的作用将会变的无限大。所以说大家可以多去学习了解一下更多的函数嵌套的使用方法。

  • ?

    别说你不会用Excel函数,其实可以让函数的参数指导你进步

    明花

    展开

    写在前面:洛阳亲友如相问,一片冰心在玉壶

    也许在刚刚踏入陌生的一个世界中,你会发现有很多的人或者事情,你不熟悉。其实一路来走来,旅途的花开花落,情来情去情随缘,均有陌生人为你作伴相随。

    不知你有木有发现我们的Excel其实也是有个很好的向导的,可以帮助我们更好的使用函数。

    尤其当你不知道所需函数的名称,但不确定如何构建它,可以使用函数向导帮你完美解决。

    我们举一个例子来说明一下:

    选择单元格,然后转至“公式”>“插入函数”>在搜索函数框中键入 VLOOKUP,然后按“转到”。看到 VLOOKUP 突出显示时,在底部单击“确定”。如果选择列表中的函数,Excel 将显示其语法。

    接下来,在其各自的文本框中输入函数参数。每输入一个参数,Excel 都会对其求值,并显示其结果,最终结果显示在底部。完成后请按“确定”,Excel 将为你输入公式。

    我们在输入函数参数的时候,其实可以看到下面的解释,提示这个位置应该输入啥值。我们顺带简单提一下这个函数的使用方法哈!

    VLOOKUP 是 Excel 中使用最广泛的函数之一(也是我们最喜欢的工具之一!)。使用 VLOOKUP,你可查找左侧列中的值,如果找到匹配项,则会在右侧的另一列中返回信息。

    无一例外,你会遇到 VLOOKUP 找不到所需内容,并且返回错误 (#N/A) 的情况。有时是单纯的因为查找值不存在,或者因为引用单元格尚无任何值。

    第一种情况,如果你知道查找值存在,但查找单元格为空,你希望隐藏错误,可以使用 IF 语句。在这种情况下,我们将如单元格 D43 所示嵌套现有 VLOOKUP 公式:

    =IF(C43="","",VLOOKUP(C43,C37:D41,2,FALSE))

    这表示如果单元格 C43 没有任何内容 (""),则不返回任何结果,否则返回 VLOOKUP 的结果。请注意公式末尾的第二个右括号。这可关闭 IF 语句。

    第二种情况,如果不确定查找值是否存在,但仍想抑制 #N/A 错误,可以在单元格 G43 中使用名为 IFERROR 的错误处理函数:=IFERROR(VLOOKUP(F43,F37:G41,2,FALSE),"")。IFERROR 表示,如果 VLOOKUP 返回有效结果,则显示该结果,否则不显示任何内容 ("")。此处我们没有显示任何内容 (""),但还可以使用数字(0、1、2 等)或文本,如“公式不正确”。

    PS:IFERROR 称为综合错误处理程序,意味着它将抑制公式可能引发的任何错误。如果 Excel 通知你公式有需要修复的合法错误,这可能导致问题。

    经验法则是不要将错误处理程序添加到公式中,除非确定它们能工作正常。

    有时,你会遇到含有错误的公式,Excel 显示为 #ErrorName。错误很有用,因为它们可指出某些内容未正确运行,但进行修复并非易事。所幸,有通过多种方式可帮助你查找错误来源,并进行修复。

    1.错误检查 - 转到“公式”>“错误检查”。这将加载一个对话框,告知你特定错误的一般原因。在单元格 D9 内,引发 #N/A 错误的原因是没有匹配“苹 果”的值。可以修复此错误,方法是使用存在的值,使用 IFERROR 抑制错误,或知道在使用确实存在的值时错误会消失的情况下忽略它。

    2.如果单击”关于此错误的帮助”,将打开特定于此错误消息的帮助主题。如果单击“显示计算步骤”,将加载“公式求值”对话框。

    3.每次单击“求值”,Excel 都将逐步执行公式,一次一个部分。它不一定会告诉你出现错误的原因,但会指出位置。在这里,查看帮助主题,推导公式出问题的位置。

    写在结尾:寒雨连江夜入吴,平明送客楚山孤。

    以上就是今天要和大家分享的技巧,希望对大家有所帮助,欢迎大家帮忙转发,谢谢!

    祝各位一天好心情!

    Excel中每一个方法都有特定的用途,不是他们没有用处,只是你不了解或者暂时用不着,建议你收藏起来,万一哪天用着呢?

  • ?

    连接多单元格数据?试试这个Excel自定义函数吧

    小讨厌

    展开

    此为临时链接,仅用于文章预览,将在短期内失效关闭

    生成永久链接

    连接多单元格数据?试试这个Excel自定义函数吧

    2017-06-24 小奇 Excel之家ExcelHome

    字符串处理是函数的软肋,动不动就多层嵌套,数组公式,有些功能还无法实现,比如用连接符连接文本,用函数几乎是无法做到的,有了VBA自定义函数,这一切将SO EASY!

    下面就介绍一个简单的字符串处理函数:

    函数名:

    MYSTR

    作 用:

    用任意连接符连接文本

    参数介绍:

    第一参数:(必须)指定连接符,可以是文本常量,也可以是单元格引用。忽略空单元格。

    第二参数:(必须)需要连接的文本或单元格区域。

    第三、四等参数:(可选)同第二参数

    效果展示:

    创建自定义函数的方法:

    新建一个EXCEL文档,只保留一个工作表,其余删除。

    按

    ALT+F11

    ,打开VBE编辑器,新建一个模块,把下面的自定义函数代码复制到模块中,关闭VBE编辑器。

    PublicFunction mystr(ll, ParamArray x())

    For Each r In x

    If IsArray(r) Then

    For Each rr In r

    If rr <> ""Then mystr = mystr & ll & rr

    Next

    Else

    mystr = mystr & ll & r

    End If

    mystr = Mid$(mystr, 2, Len(mystr))

    EndFunction

    F12

    【另存为】,文件保存类型选择“

    Excel加载宏

    ”。它将自动存入ADDIN文件夹中。

    然后从任意一个EXCEL文件的【开发工具】-【加载宏】中勾选所保存的宏文件名,确定。

    接下来就可以在工作表中的随心所欲的使用自定义的合并文本函数啦,赶紧的,动手试试吧——

    作者:zmnyu

  • ?

    Excel表格中如何设置自定义列表?

    八神庵

    展开

    Excel表格中如何设置自定义列表?

    一般用于 小组或者公司人员姓名,这样就可以省去输入名字的时间了!

    @安志斌制作

    1首先打开表格左上方的【文件】按钮;在点击【选项】按钮;

    @安志斌制作@安志斌制作

    2在弹出的 提示框中点击【高级】按钮;然后下拉找到【编辑自定义列表O】

    @安志斌制作

    3在弹出的提示框中点击 【导入】按钮边上的【上升箭头↑】,选中 单元格中的名字文本; 在点击【导入】

    @安志斌制作@安志斌制作

    4自动弹回的 Excel选项 界面后,点击【确定】

    @安志斌制作@安志斌制作

    5在任意单元格输入第一个名字后,下拉单元格填充,这样就会显示 刚刚导入的名字了~

    @安志斌制作@安志斌制作
  • ?

    Excel函数公式:自定义格式和条件格式的完美组合实用技巧解读

    鹿天川

    展开

    转载自百家号作者:Excel函数公式

    实际的工作中,我们有时候需要用Excel来记录项目的完成进度,但是又不想手动操作,这时候我们应该怎么办了?其实,我们可以利用Excel的【自定义格式】和【条件格式】来完成。

    一、效果图。

    1、从效果图中我们可以看出,如果每个阶段已开始工作,用√来标识,如果所有阶段全部完成,“总体情况”为“√已完成”;如果所有阶段都未开始:“总体状态”为“×未开始”;如果开始了部分,“总体情况”为“!进行中”。

    2、而且随着工程进度的变化,“总体情况”也随着发生变化。这样的图表是不是也很方便呢?

    二、步骤。

    1、判断工程进度情况,如果已完成,显示1,未开始,显示-1,进行中,显示0。

    方法:

    在目标单元格中输入公式:=IF(COUNTIF(D3:K3,"√")=8,1,IF(COUNTIF(D3:K3,"√")=0,-1,0))。

    解读:

    利用IF和COUNTIF函数判断D3:K3区域中√的个数,如果为8,则返回1,如果为0,返回-1,否则返回0。

    2、自定义格式。

    方法:

    1、选中目标单元格。

    2、快捷键:Ctrl+1打开【设置单元格格式】对话框。

    3、选择【分类】中的【自定义】,并在【类型】中输入:已完成;未开始;进行中(注:类型中输入的分号为英文状态下的分号)。

    4、【确定】。

    3、图标设置。

    方法:

    1、选中目标单元格。

    2、【开始】-【条件格式】-【新建规则】。

    3、单击【选择规则类型】中的【基于各自值设置所有单元格的格式】;选择【格式样式】中的【图标集】;选择【图标样式】中的目标图标。

    4、选择左下角第一行【类型】中的【数字】,【值】中输入:1;选择第二行【类型】中的【数字】并【确定】。

    结束语:

    本示例中主要应用了IF和COUNTIF函数,以及自定义格式和条件格式的内容,如果单个知识点拿出来应用,相信大家都会使用,但是如果组合使用,那就需要下点儿功夫了。

    如果在学习过程中,遇到任何可疑之处,欢迎大家在留言区留言讨论哦!如果没有可疑之处,还可以发表敢想敢言哦!

  • ?

    不会VBA一样可以轻松获取Excel对象属性用自定义函数

    Tisted

    展开

    之前零散开发过一些自定义函数获取Excel对象属性,此次再细细地把有价值的属性都一一给开发完成,某些场景下,有这些小函数还是可以比较方便地实现一些通过Excel界面没法轻松获取到的信息。

    函数清单

    可在公式=》插入函数里找到此类的函数清单

    大部分函数取的是单元格的一些属性。

    函数清单

    同时也做了个示例的文件,方便使用和查阅。

    函数示例工作薄

    具体函数功能

    GetHyperlinksAddress函数

    从网页上复制内容到Excel中比较有用,可以提取网页的超链接

    GetRowHeight函数

    获取行高

    GetColumnWidth函数

    获取列宽

    GetCellFormular函数

    获取单元格公式内容

    GetCellCommentText函数

    获取批注信息

    GetCellText函数

    获取单元格显示的内容

    GetCellNumberFormat函数

    获取单元格的数字格式设置内容

    GetCellInteriorColor函数

    获取单元格填充颜色值

    GetCellFontColor函数

    获取单元格的字体颜色

    GetRangeAddress函数

    获取单元格的地址,不同参数下可获得相应的绝对、相对引用的地址格式

    GetCurrent相关函数

    获取工作表、工作薄的名称信息

    总结

    万丈高楼平地起,任何一个精彩的Excel应用,都是多方的知识和功能联合造就的,这些小小的自定义函数,某些时候会是某个数据应用里一个很不错的功能落地点。积累多一些知识,真正应用时就可以有丰富的智囊可供使用。

  • ?

    10个简单好用的excel函数小公式,学会了大呼过瘾!转需不谢

    几度

    展开

    对于普通的上班族而已,有时候提升效率不在于掌握了多复杂的excel公式,很多时候学习就是需要怼最基础的掌握,感受excel带来的快捷性和学习成功后的成绩感。

    下面几个小技巧,希望能助力各路朋友增长使用能力。

    1、随机生成1~1000之间的数据

    =

    RANDBETWEEN

    (1,1000)

    2、出现最多次数的数据怎么找出来咧

    MODE

    (A:A)

    3、排名计算用的到

    RANK

    (D2,D:D)

    4、多个单元格字符怎么合并?

    PHONETIC

    (A2:B6)

    注:不能连接数字

    5、汉子和日期无缝对接

    ="今天是"&

    TEXT

    (

    TODAY()

    ,"YYYY年M月D日")

    6、百位舍入,很有意思

    ROUND

    (D2,-2)

    7、小数点后四舍五入

    ROUNDUP

    (D2,0)

    8、显示公式该怎么搞,版本有所不同

    FORMULATEXT

    (D2)

    9、生成A,B,C..,有时候排序什么的用的到

    横向复制

    CHAR

    COLUMN

    (A1)+64)

    坚向复制

    (ROW(A2)+64)

    10、本月的天数,这个是最常见的

    =DAY(

    EOMONTH

    (TODAY(),0))

  • ?

    一分钟教你入门Excel自定义函数

    又柔

    展开

    新函数班级的学员提了一个问题:如何去除数字后面的0?

    这种情况比较特殊,通常情况下,0都是在数字前面。

    要去除前面的0就比较容易,只要让数字参与运算就可以。

    再将数字反转过来,就是最终的结果。

    也就说,要从A列变成D列的最终效果,需要先实现将数字反转过来,再去除数字前面的0,最后再一次将数字反转。

    在常规的函数中没有反转函数,而VBA中StrReverse函数就是反转函数。这里,卢子教你一步步使用自定义函数。

    以下内容,WPS不可以使用。

    Step 01按快捷键Alt+F11,插入模块。

    Step 02输入一段非常简单的代码,意思就是自定义一个函数叫反转数字,这个函数只有一个参数。

    Function 反转数字(Str As String)反转数字 = StrReverse(Str)End Function

    Step 03在单元格输入自定义函数,这样就完成了一个简单的自定义函数的全部操作过程。

    在VBA中,其实也可以跟常规公式一样,实现嵌套,在函数前面加--就实现去除前面的0。

    Function 反转数字(Str As String)反转数字 = --StrReverse(Str)End Function

    说明,这样用Val也可以将文本转换成数字。

    反转数字 = Val(StrReverse(Str))

    再嵌套一个反转函数StrReverse,就大功告成。

    Function 反转数字(Str As String)反转数字 = StrReverse(--StrReverse(Str))End Function

    其实入门Excel自定义函数并不难,有心学习都可以。

  • ?

    怎么在Excel中创建自定义函数

    闵听安

    展开

    ;)在编制好的Excel表格中的某一个单元格(例如D1)中输入“0.95”

    (2)数据(例如B2)所在的行的空白单元格(C2)中输入“=B2*$D$1",按键盘上”回车“键,这时就完成单元格B2中的数据乘以0.95的操作

    (3)选中单元格C2,将光标放到单元格C2的右下角,当出现”+“号后,按住鼠标左键往下拉动鼠标,这样就实现了”自动填充“功能,将一列数据中每一个单元格中数据乘以0.95。

    备注:$D$1是绝对引用。

    (本文内容由百度知道网友我是来吓宝宝的贡献)

  • ?

    Excel VBA之自定义函数Function

    Ora

    展开

    =============================================================

    ====================

    || 版本号:Excel2013. ||

    VBA有两个基本过程,一个是Sub过程,一个是Function过程。

    其中Function过程就是自定义函数,本篇就来介绍它

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    自定义函数的基本语法

    Function也是保存在模块中

    如下:

    注:(1)带[]号的都是可选内容。第一行最后的As语句表示指定函数返回的数据类型。

    (2)如果想强制退出函数过程,则在需要位置加上语句 Exit Function

    (3)最后必须把过程计算的结果返回给函数名称。

    (4)使用自定义的Function与使用Excel已有的函数是一样的。但是要注意,私有的函数是

    不会出现在“插入函数”对话框里的。

    举一个例子,计算特定单元格区域背景颜色为黄色的单元格数目,该函数如下:

    注意:这个函数需要你传入所要计算的单元格区域

    设定自定义函数为易失性函数

    有时当工作表重新计算时,自定义的函数并不会重新计算。此时我们要手工将自定义的Function

    设定为易失性函数就可以了。设定也很简单,值需要在函数开始的第一句写上如下代码即可:

    注意:当表格改变时,易失性函数也会重新计算。但是想单元格背景色的改变不会导致表格重新计算,

    因此易失性函数也不会重新计算。

excel怎么自定义函数

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP