Excelexcel数值格式 自定义义函数自能返回一个数值吗

Excel中返回指定第几个重复值的自定义函数WLOOKUP
我的图书馆
Excel中返回指定第几个重复值的自定义函数WLOOKUP
&& & &在这个世界上,只有你想不到的,没有做不到的。 高手永远都是高手啊。&&&
大家都知道Excel自带的VLOOKUP函数如果存在多个符合条件的结果时,只能返回符合条件的第一个结果,如果想知道第二个、第三个甚至是后面的就无能为力了。下面的自定义函数的作用和VLOOKUP一样,唯一不同的是,这个函数可以通过第三个参数来指定返回第几个符合条件的结果。值得珍藏的代码。(注:收录时已修改部分代码)Function&WLOOKUP(X&As&Variant, M&As&Range, A&As&Byte, B&As&Integer)&&&&'X 要查找的内容,可为单元格型、字符型、数值型、逻辑型等等。&&&&'M
要进行数据查询的单列区域,与VLOOKUP函数的参数有区别。&&&&'A
返回第几个符合条件的结果。如果重复值超过255个,&&&&'& 视具体情况把第1行代码中的 A As Byte 改为 A As Integer 或 A As
Long&&&&'B
返回结果的列索引,可以是0或负数。&&&&'
用于数据查询的单列区域M所在列的值为1,表示第1列,&&&&' 右侧第1列为2,右侧第2列为3
。。。。。。&&&&' 左侧第1列为0,左侧第2列为-1,左侧第3列为-2 。。。。。。以此类推&&&&Dim&I&As&Integer, MR&As&Range, y&As&Integer&&&&I =
Application.WorksheetFunction.CountIf(M, X)&&&&'Set M = Intersect(M.Parent.UsedRange,
M)&&&&For&Each&MR&In&M&&&&&&&&If&MR.Value = X&Then&&&&&&&&&& y = y +
1&&&&&&&&&&&If&y
= A&Then&&&&&&&&&&&&&& WLOOKUP = MR.Offset(0,
B - 1).Value&&&&&&&&&&&&&&&Exit&Function&&&&&&&&&&&End&If&&&&&&&&End&If&&&&&Next&MR&&&&&WLOOKUP = ""End&Function使用方法示例:要求:根据下述成绩表,得到所有姓名为“张3”的外语成绩。
发表评论:
TA的最新馆藏温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(9212)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'VBA 自定义函数',
blogAbstract:'概念了解
一、什么是函数
一个函数就是预定的一个计算公式,可以快速地完成一个特定的计算。如:sum,index etc。',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:3,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:1,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}如何在Excel中创建一个自定义函数并使用函数 Excel教程
作者:Excel教程
浏览:2229次
  我们都知道,在Excel中,提供了很多常用的功能强大的内置函数,只要使用这些内置的函数,就能提高我们的工作效益。  但是,提供的内置函数,毕竟都是常用的;可是,我们的工作问题,不可否认具有特殊性,因此,在某些场合之下,使用excel提供的内置函数,是无法快速完成我们的工作的。  那么,我们如何才能在Excel中创建、构造一个自定义函数并使用函数呢?即,我们如何在Excel中自己写一个函数,然后加以使用呢?  以下为操作方法,介绍过程俺写得非常详细,请过目!  首先看下表!600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/772.gif" border="0" alt="" />  上表中,A列是成绩,而B列是用来判断A列的成绩是否及格的,通过判断,输出“及格”和“不及格”字样。  在Excel界面中,按下“Alt F11”组合键,弹出Microsoft Visual Basic界面,如下图!600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/773.gif" border="0" alt="" />  上图中,执行菜单操作:“插入”→“模块”;之后,会弹出如下图的模块1(代码)的代码编写窗口。600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/774.gif" border="0" alt="" />  如上图,左边选择“通用”,然后输入上图中的代码即可。  现在,我们就已经创建好了一个自定义函数,函数名称为JGF,该函数带有一个参数,稍后再介绍其使用方法。  上述只是一个自定义函数,仅有一个,如果我们想要制作多个自己的函数,应该怎么办呢?非常简单,在此代码窗口中,继续编写自定义函数即可,如下图!600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/775.gif" border="0" alt="" />  上图中,我们又编写了一个用来判断成绩是否优秀的函数,其名称是YouXiFou,同时,该函数也带有一个参数。  就使用这种方法,如果要建立更多的自定义函数,也使用该方法。  制作好了自定义函数,如何使用呢?  如下图,在Microsoft Visual Basic窗口界面中,找到格式工具栏,点击“保存”600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/776.gif" border="0" alt="" />  现在,自定义函数就已经保存到您当前打开的XLS文件中了,这些自定义函数,将会随着该Excel文件的保存而保存、打开而打开,现在,该是使用这些函数的时候到了。  返回Excel界面,如下图!600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/777.gif" border="0" alt="" />  上图中,选择B2单元格,在其对应的FX函数输入框中,输入 =JGF(A2) ,按下回车键,这个时候,就会得出“不及格”的结果,至于其它的单元格,直接使用句柄填充工具进行填充,就得到结果了。  好了,我们再分析另外一个函数吧,其使用方法当然和上面的一样了。如下图!600)makesmallpic(this,600,1800);' src="http://down.amhl.net/img/pc/jsj/excel/778.gif" border="0" alt="" />  到这里,不知道您是否已掌握了自定义函数的创建方法和使用方法了?如果还不明白,请您再仔细阅读上文,如果还不懂,请联系本站长吧!  知识扩展:  ①如何创建自定义函数  以上代码结构,是函数的格式,我们也可以称为结构  Function JGF(MyValue)  您自己编写的代码就在这里了!  End Function  我们可以理解为:  Function 函数名称(函数参数名称)  您自己编写的代码就在这里了!  End Function  注意哦,Function是函数定义的关键字,而End Function用来申明函数结束,这两行的中间的那部分代码,就是我们要自己写的代码,非常灵活,称为自定义函数。  ②如何带有多个参数的自定义函数  方法非常简单,从①中扩展开来即可,格式如下:  Function 函数名称(参数名称1,参数名称2,参数名称3……)  您自己编写的代码就在这里了!  End Function  ③其它问题  创建自定义函数,只要学会了基本方法,懂得函数的结构,就已经成功了一半了;难点在于,您如何根据个人的需要,编写能解决实际工作问题的代码。至于代码如何编写,就看个人的基本功了,在此,一言难尽。  另外,请大家注意,自定义的函数,是保存在您所打开的Excel文件里面的,这些自定义函数,只能在这个Excel文件中使用,而在其它文件,是无法使用的。
如何在Excel中创建一个自定义函数并使用函数 Excel教程的发表时间是: 15:10:02&来源:
爱盲网提供盲人无障碍浏览《如何在Excel中创建一个自定义函数并使用函数 Excel教程》,感谢作者:Excel教程撰稿!
<div class="number" id="DiggNum_

我要回帖

更多关于 vba自定义函数返回值 的文章

 

随机推荐