Excel Formulas
Excel Formulas
● Index-Match: =INDEX(return_range,MATCH(lookup_value,lookup_range,0))
● Double Index-Match:
=INDEX(return_range,MATCH(row_value,row_lookup,0),MATCH(col_value,c
ol_lookup,0))
● Multi-criteria Index-Match:
=INDEX(return_range,MATCH(1,(criteria1=range1)*(criteria2=range2),0
))
● Offset-Match:
=OFFSET(reference,MATCH(lookup_value,lookup_range,0)-1,0)
● Xlookup basic: =XLOOKUP(lookup_value,lookup_array,return_array)
● Xlookup with not found:
=XLOOKUP(lookup_value,lookup_array,return_array,"Not Found")
● Xlookup exact match:
=XLOOKUP(lookup_value,lookup_array,return_array,,-1)
● Xlookup wildcard:
=XLOOKUP("*"&lookup_value,lookup_array,return_array)
● Xlookup multiple returns:
=XLOOKUP(lookup_value,lookup_array,{return_array1,return_array2})
● Xlookup reverse lookup:
=XLOOKUP(lookup_value,lookup_array,return_array,,,-1)
2. Array Formulas
6. Logical Functions
● Nested IF:
=IF(condition1,value1,IF(condition2,value2,IF(condition3,value3,val
ue4)))
● IFS function:
=IFS(condition1,value1,condition2,value2,TRUE,default_value)
● SWITCH function:
=SWITCH(expression,value1,result1,value2,result2,default_result)
● Multiple AND conditions:
=IF(AND(condition1,condition2,condition3),value_if_true,value_if_fa
lse)
● Multiple OR conditions:
=IF(OR(condition1,condition2,condition3),value_if_true,value_if_fal
se)
● Nested AND/OR:
=IF(OR(AND(condition1,condition2),AND(condition3,condition4)),value
_if_true,value_if_false)
● XOR operation: =IF(condition1<>condition2,TRUE,FALSE)
● ISEVEN function: =IF(MOD(number,2)=0,TRUE,FALSE)
● ISODD function: =IF(MOD(number,2)=1,TRUE,FALSE)
● Complex logical test:
=IF(AND(condition1,OR(condition2,condition3)),value1,IF(AND(conditi
on4,condition5),value2,value3))
7. Financial Functions
● Multi-condition lookup:
=INDEX(return_range,AGGREGATE(15,6,(ROW(criteria_range)-ROW(criteri
a_range)+1)*(criteria1=value1)*(criteria2=value2),1))
● Fuzzy lookup:
=INDEX(return_range,MATCH(MIN(ABS(lookup_range-lookup_value)),ABS(l
ookup_range-lookup_value),0))
● Range lookup with tolerance:
=XLOOKUP(lookup_value,lookup_range,return_range,,-1,tolerance)
● Lookup last matching value:
=LOOKUP(2,1/(criteria_range=criteria),return_range)
● Case-insensitive lookup:
=XLOOKUP(LOWER(lookup_value),LOWER(lookup_range),return_range)
● Wildcard lookup:
=XLOOKUP("*"&lookup_value&"*",lookup_range,return_range,,2)
● Lookup nearest value:
=INDEX(return_range,MATCH(MIN(ABS(lookup_range-target)),ABS(lookup_
range-target),0))
● Lookup with multiple return columns:
=XLOOKUP(lookup_value,lookup_range,{return_range1,return_range2,ret
urn_range3})
● Bi-directional lookup:
=IF(ISNA(MATCH(lookup_value,forward_range,0)),INDEX(reverse_range,M
ATCH(lookup_value,backward_range,0)),INDEX(forward_range,MATCH(look
up_value,forward_range,0)))
● Dynamic range lookup: =INDIRECT("Table1["&column_name&"]")