EXCEL中如何用数据有效性选择数据后,另一个单元格自动引用指定位置的数据
上图是为了方便截图,将SHEET1和SHEET2弄到一个图片里了,实际是两个表。注意SHEET1表中的“名称”顺序是不定的,与SHEET2中“名称”的排序不一定相同。单元...
上图是为了方便截图,将SHEET1和SHEET2弄到一个图片里了,实际是两个表。
注意SHEET1表中的“名称”顺序是不定的,与SHEET2中“名称”的排序不一定相同。单元格里想要的数据来自于SHEET1中横向“ABCD”和纵向“甲乙丙丁”的相交值。另外,要同时得到两个值,数量1和数量2.
本人不是专业搞EXCEL表的,希望能直接发公式给我,要简单明了,否则看不懂,呵呵,谢谢! 展开
注意SHEET1表中的“名称”顺序是不定的,与SHEET2中“名称”的排序不一定相同。单元格里想要的数据来自于SHEET1中横向“ABCD”和纵向“甲乙丙丁”的相交值。另外,要同时得到两个值,数量1和数量2.
本人不是专业搞EXCEL表的,希望能直接发公式给我,要简单明了,否则看不懂,呵呵,谢谢! 展开
10个回答
展开全部
方法一
在Sheet2的C2单元格输入以下公式,然后向右向下填充公式
=VLOOKUP($A2,Sheet1!$A:$I,MATCH($B2,Sheet1!$A$1:$I$1,0)+IF(C$1="数量1",0,1),0)
公式表示:在Sheet1的A列精确匹配与A2单元格相同的单元格,并返回对应满足B2单元格在Sheet1的A1:I1中对应的列数,加上如果C1为数量1为0,如果为数量2为1的结果为列数的数据。
方法二:
在Sheet2的C2单元格输入以下公式,然后向右向下填充公式
=INDEX(Sheet1!$B$3:$I$6,MATCH($A2,Sheet1!$A$3:$A$6,0),MATCH($B2,Sheet1!$B$1:$I$1,0)+IF(C$1="数量1",0,1))
公式表示:在Sheet1的B3:I6单元格区域,以A2在Sheet1的A3:A6中的位置为行数,以B2在Sheet1的A1:I1中的位置加上如果C1为数量1为0,如果为数量2为1的结果为列数,交叉位置的单元格,即为引用单元格。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
假设SHEET2的表格起始于A1,即“名称”是A1单元格
则数量1的公式(在C2):=INDEX(SHEET1!$A$1:$I$6, MATCH(A2, SHEET1!$A$1:$A$6,0), MATCH(B2, SHEET1!$A$1:$I$1,0))
则数量2的公式(在D2):=INDEX(SHEET1!$A$1:$I$6, MATCH(A2, SHEET1!$A$1:$A$6,0), MATCH(B2, SHEET1!$A$1:$I$1,0)+1)
然后向下复制填充
表中,INDEX(区域, 行坐标, 列坐标) 可以在“区域”中,取得“行坐标”与“列坐标”相交位置的数据
而MATCH(查询值, 区域, 0=严格匹配) 则是在“区域”中查找“查询值”,并返回所在的位置
这样
根据SHEET2的名称,可以在SHEET1的A1:A6中找到对应的行坐标
根据SHEET2的类型,可以在SHEET1的A1:I1中找到对应的列坐标
数量1就在上述行坐标与列坐标的交叉位置
数量2在上述行坐标与列坐标的交叉位置的右方,因此列坐标+1
单元格引用时加入了$符号,是防止公式在复制填充时,行列坐标变化
则数量1的公式(在C2):=INDEX(SHEET1!$A$1:$I$6, MATCH(A2, SHEET1!$A$1:$A$6,0), MATCH(B2, SHEET1!$A$1:$I$1,0))
则数量2的公式(在D2):=INDEX(SHEET1!$A$1:$I$6, MATCH(A2, SHEET1!$A$1:$A$6,0), MATCH(B2, SHEET1!$A$1:$I$1,0)+1)
然后向下复制填充
表中,INDEX(区域, 行坐标, 列坐标) 可以在“区域”中,取得“行坐标”与“列坐标”相交位置的数据
而MATCH(查询值, 区域, 0=严格匹配) 则是在“区域”中查找“查询值”,并返回所在的位置
这样
根据SHEET2的名称,可以在SHEET1的A1:A6中找到对应的行坐标
根据SHEET2的类型,可以在SHEET1的A1:I1中找到对应的列坐标
数量1就在上述行坐标与列坐标的交叉位置
数量2在上述行坐标与列坐标的交叉位置的右方,因此列坐标+1
单元格引用时加入了$符号,是防止公式在复制填充时,行列坐标变化
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在Sheet2的C2输入=INDEX(Sheet1!$A$1:$I$6,MATCH(A2,Sheet1!A:A,0),MATCH(B2,Sheet1!$A$1:$I$1,0)),D2输入=INDEX(Sheet1!$A$1:$I$6,MATCH(A2,Sheet1!A:A,0),MATCH(B2,Sheet1!$A$1:$I$1,0)+1)然后把C2D2向下填充。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sheet2第2行:
C2输入:=INDIRECT("sheet1!"&CHAR(2*CODE(B2)-64)&MATCH(A2,Sheet1!A:A,0))
D2输入:=INDIRECT("sheet1!"&CHAR(2*CODE(B2)-63)&MATCH(A2,Sheet1!A:A,0))
下拉复制公式
C2输入:=INDIRECT("sheet1!"&CHAR(2*CODE(B2)-64)&MATCH(A2,Sheet1!A:A,0))
D2输入:=INDIRECT("sheet1!"&CHAR(2*CODE(B2)-63)&MATCH(A2,Sheet1!A:A,0))
下拉复制公式
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询