EXCEL的查找:如何按 行号+列号 进行查询, 可用indirect() + match() 或 index() + match()

文章介绍了Excel中使用match(),indirect(),index()函数进行数据查找的方法。通过组合运用这些函数,可以实现行号和列号的获取,精确匹配跨表数据,以及处理多个二维区域的复杂查找。还详细总结了index()函数在查单列/单行和二维区域时的用法。
摘要由CSDN通过智能技术生成

0 首先用match()等取得行号,列号

如果想根据行号+列号,精确查找,另外一个区域的数据,可以用如下方法

=INDIRECT("Sheet2!r"&MATCH($C11,Sheet2!$A:$A,0)&"C"&MATCH(D$10,Sheet2!$1:$1,0),FALSE)

1 用=indirect("r1c1",false) +match() 查找

   但是要特别注意,特别是跨表查询,注意手动修改表名

   用=indirect("Sheet2!r1c1",false)

   因为无论indirect("") 中间这个""字符串 string 用& 或者concatenate() 都是一个拼接字符串,因为拼接字符串,狠自由,同时也狠容易出错,所以要看清楚。

  另外记得=indirect("r1c1",false) ,r1c1 查找模式,需要用false参数,而不是默认的true参数

2 用 index()+ match()

=INDEX(Sheet2!$G:$J,MATCH($C17,Sheet2!$A:$A,0),MATCH(D$16,Sheet2!$1:$1,0))

3 更复杂功能, index() 可以增加几个更复杂的多个区域

=INDEX((Sheet2!$A:$D,Sheet2!$G:$J),MATCH($C23,Sheet2!$A:$A,0),MATCH(D$16,Sheet2!$1:$1,0))

 

4  详细测试了index()的功能总结

4.1 index() 查单列/单行

总结:index(单行/单列,row,column)

  • index用法1,如果是单行/单列,后面参数如果只1个,那么就默认是 单行-默认对应列数,单列-默认对应行数
  • 但是一旦你写2个参数,必须按先行后列的方式写,row,column
  • 如果是单行单列,再另外一维写0,1和默认是一样的,默认指本行
  1. 在单列中查找, index(单列,row,[column/0/1])
  2. 按单行中查找, index(单行,[row/0/1],column)

4.2 index() 查1个二维区域

总结:index(至少1个二维区域,row,column,[第几个区域])

  • index用法1,如果是一个二维区域,
  • 如果是1个区域,那么后面必须填,row,column 行列按次序填。1个区域的情况下填0,1和不填都是指第1个区域-当前区域
  • 如果是多个区域,第3个参数指定是第几个区域

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值