首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

VBA实现Excel函数01:VLOOKUP

很多学习VBA的应该都是在使用了一段时间的Excel之后,想弥补一些Excel本身的不足、或者是实现一些自动化操作。...函数是Excel里非常重要的一个功能,所以,我们结合Excel的函数,用VBA去实现一些常用的函数功能。...Excel的函数其实在底层肯定也是一段写好了的程序,只是我们看不到 它的实现过程,我们用VBA实现这些函数的功能,多半会比内置函数慢很多,而且考虑的情况也不够全面,但我们主要是学习一些思路。...1、实现简单的VLOOKUP 提到Excel的函数,VLOOKUP函数应该是最为常用的一个查找函数了,一般我们都是使用它的精确查找功能,也就是第4个参数设置为0或者false,所以我们也只实现一个精确查找的函数...但是VBA没有提供判断数组维度的函数,一般这时候我们都是用错误捕捉的方式,这里就不演示了。有兴趣的可以自己网上查一查方法。

7.1K31
您找到你想要的搜索结果了吗?
是的
没有找到

VLOOKUP 之一

4 我想不出来了 对于VLOOKUP,V for vertical,垂直的,lookup for lookup,查找的意思。所以VLOOKUP意思就是vertical lookup,垂直查找。...这时候的VLOOKUP的用法就是VLOOKUP(根据什么,在哪里找,结果在‘在哪里找’的第几列,模糊还是精确匹配) 例如1,写成函数表达式就是这样的 =VLOOKUP(某个工号,工号表,2,0) 第二个地方...通过序号加李阳来查找他们对应的记录,仍然使用最基础的VLOOKUP....=VLOOKUP(C2,C:D,2,0) 至于要输入多少个才算找完所有的李阳一是继续用COUNTIF看有多少个,然后输入1到这么多的序号,另外一个贤者模式,就是往下拉拉到没有。...VLOOKUP第一篇,介绍一些基础的用法,下一篇再介绍更加高级的用法给你们。 手机码字真是没有效率没有截图还浪费时间,不如去多看两集动漫。

56310

查找函数VLOOKUP

这是一个很多人入门Excel的函数 这是一个使用率极高的函数 这是一个变幻多姿的函数 在2019大纲之前,写过两篇关于Vlookup函数的文章 >>>>>>VLOOKUP 之一>>>>>> <<<<...<<VLOOKUP之多条件查找<<<<<< 其中一篇还是手机码字的 阅读体验肯定不太好 再讲一遍 Vlookup(查找值,范围,范围中的第几列,模糊还是精确查找) 直接上例子 这是今天的案例数据...例如我们想要看杯子的单价是多少的时候 就需要用到Vlookup了 解释一下公式 =VLOOKUP(G2,A:E,4,0) G2 被查找内容 A:E 被查找内容在A:E列范围内,并且被查找内容必须出现在...是从上往下查找的 什么意思呢 就是找到了在最上方的第一个匹配值之后就停止查找 在实际应用中 我还经常看到有人把Vlookup当Countif用 这是一个很好的活学活用的例子 用Vlookup来查找值是否存在...还是上面的例子 我们这次分别找两个内容:抽纸,纸杯 只查找这两个内容是否存在于我们的案例当中 公式是这么写的 =VLOOKUP(G2,A:A,1,0) =VLOOKUP(G3,A:A,1,0) 这次

57120

个人工作管理系统开发手记2:查找并获取相应的信息

标签:VBA,Excel公式,个人工作管理系统 今天有点空闲时间,正好完善自己的个人工作管理系统,主要完善的功能就是在“说明”工作表中查找并将相应的内容输入到“目录”工作表中,以便直观地看出各分类的代表的意思...图3 上述都是手动输入公式,其实,可以使用VBA来自动输入公式,其代码如下: Sub GetCatgoryInfo() Dim lLastRow As Long Dim startRow...Range("B" & Rows.Count).End(xlUp).Row For i = startRow To lLastRow ' str = "=IFERROR(VLOOKUP...(B" & i & ",CatInfo,2,FALSE),"""")" Worksheets("目录").Range("C" & i).Formula = "=IFERROR(VLOOKUP...(B" & i & ",CatInfo,2,FALSE),"""")" Next i End Sub 如果不希望使用Excel公式,可以使用VBA的Find方法来实现,代码如下: Sub GetCategoryInfoBackup

68840

Xlookup还想全面吊打Vlookup

测试方式 十万行数据的Excel文件,对每行分别使用Xlookup、Vlookup和Index/Match组合函数; 用VBA记录运算时间; 运行设备:MacBook Air刷Windows系统,算是比较低端的配置...Xlookup VS Vlookup 这是最直接的对比,10万行Vlookup平均花了0.4秒,Xlookup平均0.56秒,前者比后者足足快了40%!...Vlookup也有自己的“快速”查找模式,即用模糊匹配取代精确匹配。我们再来看看Xlookup的二进制模式对比Vlookup的模糊匹配。...Vlookup模糊匹配比精确匹配提速明显,从0.4秒下降到0.14秒,同时也比Xlookup的二进制模式略快。但优势已经不如Vlookup对比Xlookup常规模式那么明显。...但都比Vlookup嵌套Iferror慢了一倍以上。 结论 Xlookup操作上Vlookup更灵活,至少它不需要再去数目标列在哪个位置。

76710

Excel无所不能的XLOOKUP,XLOOKUP函数不同场景的应用方法

直接在H4单元格中输入公式=VLOOKUP(G4,C4:E11,3,0)就可以查找出对应姓名的年龄。...案例3:根据姓名从右向左查询部门 VLOOKUP函数反向查找需要使用的IF(1,0)这个我们在前面的文章有过专门的讲解,直接在H4单元格中输入公式=VLOOKUP(G4,IF({1,0},C4:C11,...案例4:根据部门查找对应人数 第四回合是考验大家横向查找的应变能力,此时VLOOKUP函数把他的好搭档HLOOKUP叫来了,因为VLOOKUP擅长的是纵向查找,对于横向查找HLOOKUP函数是大家认可的...案例5:根据部门和姓名以及性别查找年龄 提到多条件查找,VLOOKUP函数从上一轮输了后,决定还是他自己出场,于是酝酿了好一会儿在J4单元格中写下公式=VLOOKUP(G4&H4&I4,IF({1,0}...最后给大家分享一下低版本Office的同学如果不想升级软件,可以使用VBA自定义一个XLOOKUP函数哦,方法如下: VBA自定义XLOOKUP函数

49350

VBA操作VBA——VBA工程对象

1、什么是VBA操作VBA: 前面的VBA意思是指VBA程序,后面的VBA是指VBA工程对象(代码和组织代码的模块、类等)。 也就是一段运行过程中的VBA程序,可以去操作VBA工程对象。...能被操作的东西显然就是一种对象,首先如果要使用VBA去操作VBA工程对象,先按如下设置: ? 勾选信任对VBA工程对象模型的访问,这时候就可以去使用VBA工程对象了。...2、VBA工程对象: 在F2对象浏览器中查看VBAProject: ? 每一个打开的Excel工作簿文件都有一个VBAProject,不管是有没有代码的。...在使用VBA编辑器的时候,有一个叫做工程资源管理器的窗口: ?...3、输出VBA工程对象名称: 简单使用一下这个VBA工程对象,和其他VBA库对象用法都差不多,要输出打开的这些VBA工程名称,非常简单,只要循环然后输出它的Name属性: Sub TestVBProject

3.5K20

VLOOKUP函数活起来,VLOOKUP函数任意方向查找的技术

标签:Excel函数,VLOOKUP函数 VLOOKUP函数被设计为向右查找,也就是说,查找值总是位于表的左侧,然后返回右侧指定列中相应的值。...VLOOKUP函数的语法如下: VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) 其中, 1.参数lookup_value:必需,...然而,如果查找值在表的右侧,要返回的值在表的左侧,如何使用VLOOKUP函数呢?如下图1所示的数据,假如要查找列C中“笔芯”的单价,假设要查找的值在单元格A7中。...图1 思路是,使用函数将列C和列B中的数据互换,以满足VLOOKUP函数的要求。这里介绍两种方法。...方法1:VLOOKUP函数+IF函数 =VLOOKUP(A7,IF({1,0},C2:C4,B2:B4),2,0) 方法2:VLOOKUP函数+CHOOSE函数 =VLOOKUP(A7,CHOOSE({

95210

Excel VBA解读(146): 使用隐式交集处理整列

例如,VLOOKUP函数通常使用单个值或引用作为要查找的值,使用单元格区域作为查找表。...例如,公式: =VLOOKUP(A4,$A:$C,3,false) 在列A至列C组成的区域中精确查找单元格A4中的内容,并返回列C中相应的值。...如果将单元格区域作为要查找的值,并且输入的不是数组公式: =VLOOKUP($A:$A,$A:$C,3,FALSE) 那么Excel将为查找值使用隐式交集,上面公式的结果如下图5所示。 ?...在VBA用户自定义函数(UDF)中运用隐式交集技术 有2种方式可以让隐式交集技术在UDF中自动工作: 1.在函数参数前面放置+号 2.使用VBA来处理隐式交集 例如,下面的简单UDF: Function...下面是一个通用的VBA函数,可以从VBA UDF内部调用,从而执行隐式交集。

4.8K30
领券