求关于 EXCEL 代替vlookup、if等低效率函数的问题。

本人有一个EXCEL物品数据库,比如:简码1.对应的是 粉笔(名称),QD(型号),1.2(单价),盒(单位)。
请问,如何在另一张表格里面,只要输入简码1,就能自动弹出关于粉笔的所有信息。

注:在不使用vlookup countif if sumif 等低效率函数的基础上。应如何实现?
因为使用vlookup countif if sumif 等低效率函数,当数据达到2000行以上时,EXCEL表格反应就很慢很慢,像蜗牛了。
还有什么方法可以替换IF函数吗?

请高手赐教。

一般可以用CHOOSE(常数,选项1,选项2,……)代替VLOOKUP,有点麻烦,因为CHOOSE往往需要定义选项,但是运行速度会相对快些。
我个人感觉VLOOKUP的速度还是可以的,只要引用的是同一工作簿的数据,速度比SUMIF等要快,但是如果是引用另一工作簿,速度才会很慢
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-27
似乎没有其它函数,解决数据量大时速度慢的方法如下:
先用这些函数进行计算,然后再把前面的大多数行的公式通过选择性粘贴粘贴为数值,仅保留最后或若干行的公式,这样即可以再新输入数据时下拉公式,又可以避免每次输入时都要对所有单元格进行重新运算,从而加快效率。追问

我录入的数据,每天都要入库和出库,数据要随时更改,如果将函数取消了,那录入的数据就没有意义了。

追答

通常进行的数据库的结构设计中,每次出库和入库都是一条新的数据记录,这些记录通常是不能改的(除非是数据输入有误),而库存余额通常是放在对已有数据记录的查询中,或在月未结账时半余额放入另外一张表中。在这种数据库的设计中很少出现需要更改过去记录的情形。而对过去信息的修改,通常是比较忌讳的,因此个人觉得对数据库的结构有必要进行重新设计。

第2个回答  2013-03-27
每次运算需要从8万多行里提取数据的飘过。。你才2000行就嫌卡么。
你开了自动计算么,开了的话不卡才怪啊
第3个回答  2013-03-27
只用VLOOKUP函数就可以
=vlookup(a1,sheet1!$a:$d,column(b1),0)右拉填充
第4个回答  推荐于2018-12-24
现对你的数据范围做定义名称(根据所选内容定义名称)简码在第一列就是最左列。
那么名称里会出现以简码为名称的一堆名称。其数据就是名称,型号等等。
A1随便输入一个简码之后在那之后输入=INDEX(INDIRECT(A1),N)
其中N是该名成里面随影的序列。

测试了三千行,十列的数据。感觉比VLOOKUP快些。

求关于 EXCEL 代替vlookup、if等低效率函数的问题。
一般可以用CHOOSE(常数,选项1,选项2,……)代替VLOOKUP,有点麻烦,因为CHOOSE往往需要定义选项,但是运行速度会相对快些。我个人感觉VLOOKUP的速度还是可以的,只要引用的是同一工作簿的数据,速度比SUMIF等要快,但是如果是引用另一工作簿,速度才会很慢 ...

请问有WPS或Excel关于IF公式的代替问题
或 =VLOOKUP(G2,IF({1,0},客户信息!D:D,客户信息!C:C),2,)下拉。

EXCEL中有没有什么函数可以代替VLOOKUP
用索引函数INDEX 其功能比VLOOKUP更胜一筹。VLOOKUP是首列查找函数,查找对象列只能是首列,实际操作中会有限制。故我倒喜欢用索引INDEX。另外,正确率是跟设置关系,如最后的逻辑参数:若为TRUE、1或省略,则返回近似匹配值;若为FALSE或0,则返回精确匹配值。

请师傅帮忙解决这个EXCEL关于if、vlookup函数问题啊,万分感谢
因为物资编码是唯一的,所以用SUMIF函数可以了。在“表A”的【库存总量】中输入公式:B2=SUMIF(表b!$A:$A,A2,表b!$B:$B)只要在物资编码中输入编码,就可得到表B的对应物资编码的“物资数量”列全部库存。如果在表b中插入了A列,则此公式应改为:=SUMIF(表b!$B:$B,A2,表b!$C:$C)即...

EXCEL中类似VLOOKUP的函数?
可以用SUMPRODUCT或LOOKUP函数,如果不是单一的,可以用LOOKUP函数,会只返回最后一个符合条件的记录,如I2用公式:=IFERROR(LOOKUP(1,0\/(($A$2:$A$1000=H2)*($C$2:$C$1000=K2)),$E$2:$E$1000),"")但是看了下截图,K列的值与C列的值并不完全匹配,会导致找不到数据。

EXCEL表格 类似VLOOKUP的函数。
以左下表为例 B17公式:=IFERROR(INDEX(B$7:E$7,SMALL(IF(OFFSET(A$7,MATCH(B$16,A$8:A$10,0),1,,4)<>"",COLUMN(A:D)),ROW(A1))),"")数组公式,按CTRL+SHFIT+回车,下拉;C17公式:=IFERROR(HLOOKUP(B17,B$7:E$10,MATCH(B$16,A$8:A$10,0)+1,0),"")下拉。

EXCEL中用什么函数代替IF
EXCEL中可以使用vlookup或lookup函数代替IF 单位的人员身份很多,工资还不一样。如果IF 局长 2000,IF 副局 1000……,这样下去得IF10多次,但是IF超过7层就不行了。有什么别的函数可以也达到这样的功能还不受功能限制吗?假设职称在C列从C2开始 在D2中输入以下公式:=VLOOKUP(C2,{"局长",2000;"副...

Excel函数中,关于VLOOKUP与IF函数求助
你好:公式=HLOOKUP(YEAR(C4),$H$1:$L$2,2,FALSE)说明:HLOOKUP:在指定行中匹配数据 YEAR(C4),提取C列年份 H$1:$L$2,匹配数据源所在区域 2,查找第二行数据,(H1年份所在行为第1行,使用率为第2行,和VLOOKUP一样)FALSE,精确查找 ...

Excel可以用什么函数来代替IF
=IF(A1="","",VLOOKUP(--RIGHT(A1,3),G:H,2,))注意:提问中说的是后三位,所以用RIGHT(A1,3)就行了,但如果这不是后三位,而是从第8位开始截取3位,那么以上公式改为:=IF(A1="","",VLOOKUP(--MID(A1,8,3),G:H,2,))如果还是不符合要求的,请把数据按以下要求截图发上来。

关于EXCEL表格Vlookup函数的问题,求大神帮忙啊
2、如果不同客户名称存在明显的字符差异,我们可以使用模糊查找的方式来建立匹配,输入=VLOOKUP(C2,A:B,2,1) 然后向下填充公式,或者利用通配符来建立模糊查找,输入=VLOOKUP("*"&C2&"*",A:B,2,0) 然后向下填充公式。3、关于”表格刚开有个对话框“的问题,应该是你的表格存在其他工作簿引用...

相似回答