INDEX+match/offset 使用 INDEX 和 MATCH 或 OFFSET 而不是 VLOOKUPVLOOKUP(A1, Data!$A$2:$F$1000,3,False)INDEX(Data!$A$2:$F$1000,MATCH(A1,$A$1:$A$1000,0),3) 02 SORT的应用 加快查找速度
03 两个查找 对缺少值的排序数据使用两个查找IF(VLOOKUP(lookup_val ,lookup_array,1,True)=lookup_val, VLOOKUP(lookup_val, lookup_array, column, True), 'notexist') VLOOKUP(lookup_val ,lookup_array,1,True) IF(VLOOKUP(lookup_val ,lookup_array,1,True)=lookup_val, VLOOKUP(lookup_val, lookup_array, column, True) 如果从查找列得到的结果与查找值不匹配,则表示它是缺失值,公式将返回“notexist”。 注意,如果查找的值小于列表中的最小值,则会收到错误。可以使用 IFERROR 来处理此错误,或者向列表添加一个小的测试值。 04 IFERROR的应用 对于缺少值的未排序数据,使用 IFERROR 函数IF IFERROR(VLOOKUP(lookupval, table, 2 FALSE),0) IF(ISNA(VLOOKUP(lookupval,table,2,FALSE)),0,VLOOKUP(lookupval,table,2,FALSE)) In A1 =MATCH(lookupvalue,lookuparray,0)In B1 =IF(ISNA(A1),0,INDEX(tablearray,A1,column)) 如果无法使用两个单元格,则使用 COUNTIF。它通常比完全匹配查找速度快。 IF (COUNTIF(lookuparray,lookupvalue)=0, 0, VLOOKUP(lookupval, table, 2 FALSE)) 05 Match+Index 使用 MATCH 和 INDEX 对多个列进行完全匹配查找stored_row ),并对每个结果列使用以下语句:INDEX(Lookup_Range,stored_row,column_number) {VLOOKUP(lookupvalue,{4,2},FALSE)} |
|