第1个回答 2009-07-30
楼主,A列输入"编号"B列出"品名"可以做到,B列输入"品名" A列出"编号"也可以做到。但二个不能同时也就是说,也就是说,要么以编号查品名,要么以品名查编号,二者不能同时查,想输啥输啥。 如果有人说可以,那就是在骗您。
A列输入编号B列出品方法: 在表2的B2输入公式:
=vlookup(a2,表1!$A$1:$B$2000,2,0)
B列输入"品名" A列出"编号": 在表2的A2输入公式
=vlookup(b2,if({1,0},表1!$B$2:$B$2000,表1!$A$2:$A$2000),2,0)
第2个回答 2020-03-14
自动显示需要一个搜索的原始数据。
比如sheet2的ab列时编号品名对照表,可以在sheet1的b1输入公式:
=if(isna(vlookup(a1,sheet2!a:b,2,0)),"无此编号",vlookup(a1,sheet2!a:b,2,0))
公式往下拉
第3个回答 2009-07-30
您 说的不能实现。又要写公式又要做为输入条件 除非用VBA
建议在表2加个辅助列 E列 列名:查找条件
把经查找的编码或名称填在E列
A2=INDEX(Sheet1!$A$2:$D$47,IF(ISERROR(MATCH(E2,Sheet1!$A$2:$A$47,0)),MATCH(E2,Sheet1!$B$2:$B$47,0),MATCH(E2,Sheet1!$A$2:$A$47,0)),COLUMN())
B2=NDEX(Sheet1!$A$2:$D$47,IF(ISERROR(MATCH(E2,Sheet1!$A$2:$A$47,0)),MATCH(E2,Sheet1!$B$2:$B$47,0),MATCH(E2,Sheet1!$A$2:$A$47,0)),COLUMN())
C2=INDEX(Sheet1!$A$2:$D$47,IF(ISERROR(MATCH(E2,Sheet1!$A$2:$A$47,0)),MATCH(E2,Sheet1!$B$2:$B$47,0),MATCH(E2,Sheet1!$A$2:$A$47,0)),COLUMN())
D2=INDEX(Sheet1!$A$2:$D$47,IF(ISERROR(MATCH(E2,Sheet1!$A$2:$A$47,0)),MATCH(E2,Sheet1!$B$2:$B$47,0),MATCH(E2,Sheet1!$A$2:$A$47,0)),COLUMN())
往下拖就行了。
补充一下:
如果不喜欢#N/A 在前面加个IF如A2
A2=IF(E2="","",INDEX(Sheet1!$A$2:$D$47,IF(ISERROR(MATCH(E2,Sheet1!$A$2:$A$47,0)),MATCH(E2,Sheet1!$B$2:$B$47,0),MATCH(E2,Sheet1!$A$2:$A$47,0)),COLUMN()))
不明白 HI我
第4个回答 2009-07-30
VLOOKUP函数基本应用! 你有时候记住品名有时候记住编号·那你就做个表3用来输品名表4输编号
如记住了编号
在规格处使用函数 =VLOOKUP(编号的坐标,表1名称,3,FALSE)
在价格处使用函数 =VLOOKUP(编号的坐标,表1名称,4,FALSE)
编号的坐标就是横向字母+竖向数字 如左上较第一个格子坐标就是A1,旁边的是B1,下面的是A2 表一的名称你要是没动过的话就是左下角的SHEET1 改了的话你自己也应该知道了