当前位置:萝卜系统下载站 > 办公软件教程 > 详细页面

EXCEL中VBA函数其中使用自定义函数JOINIF函数连接文本

EXCEL中VBA函数其中使用自定义函数JOINIF函数连接文本

更新时间:2024-01-02 文章作者:未知 信息来源:网络 阅读次数:

Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。

小伙伴,请看下面的截图:左边是组别、姓名。我们希望通过EXCEL实现右边的效果。

  先别往下面看哟!思考两分钟,你平时接触到的EXCEL函数能实现吗?

  小奇老师给大家分享的是使用自定义函数JOINIF函数,来按条件连接文本。  下面就一起学习处理字符串的自定义函数——JOINIF函数,先认识一下:函数名:JOINIF作用:对参数范围中符合指定条件的单元格内容进行连接。参数介绍:第一参数:(必须)条件区域,根据条件计算的单元格区域。第二参数:(必须)用于确定连接的条件。第三参数:(必须)要连接的实际单元格区域。  通过上面的介绍,我们不难看出,JOINIF函数和SUMIF函数极其相似,只是功能上由求和变成了连接文本。  下面我们通过一个例子:如下图,A、B列为数据源,分别为组别和姓名,目标是组织成D、E列的格式:解决方法:  一、创建自定义函数:  1、新建一个EXCEL文档,只保留一个工作表,其余删除。按ALT+F11,打开VBE编辑器,新建一个模块,把下面的自定义函数代码复制到模块中,关闭VBE编辑器。Function JOINIF(Rng1 As Range, Str, Rng2 As Range) Dim Arr, Brr Dim i As Long Dim j As Long Dim MyStr As String If Rng1.Rows.Count > 65536 Then Arr = Rng1.Resize(65536, Rng1.Columns) Brr = Rng2.Resize(65536, Rng1.Columns) Else Arr = Rng1 Brr = Rng2 End If
For i = 1 To UBound(Arr) For j = 1 To UBound(Arr, 2) If Arr(i, j) <> "" Then If Arr(i, j) = Str Then MyStr = MyStr & Brr(i, j) & "," End If Else Exit For End If Next j Next i JOINIF = Left(MyStr, Len(MyStr) – 1)End Function  2、点击【文件】【另存为】,文件保存类型选择“Excel加载宏”。它将自动存入ADDIN文件夹中。  3、从要使用此函数的EXCEL文件的【开发工具】-【加载宏】中勾选所保存的宏文件名,确定。就可以在工作表中的随心所欲的使用自定义的按条件连接文本函数啦。  4、看一下使用效果,是不是很酷呢?


Excel整体界面趋于平面化,显得清新简洁。流畅的动画和平滑的过渡,带来不同以往的使用体验。

温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html