If Type = 1 or the third parameter is missing, the index of the last value that is smaller or equal to the search criterion is returned. This applies even when the search array is not sorted. For Type = -1, the first value that is larger or equal is returned.

This part of the MATCH function help page is incorrect. MATCH(4,{2,11,4,5},1) will most certainly not return 3, it will return 1. I think the sentence “This applies even when…” was meant to indicate that you aren’t going to get back an #N/A just because the array is not sorted??

The LO MATCH seems in every way to replicate the MS Excel function, as promised earlier on the help page. So:

Type 1: go LtoR/TtoB until you hit the search criterion and give me that position or hit something bigger than the search criterion and give me the position right before that, or #N/A if there is no position before that because the first entry is already bigger. If nothing is equal to or bigger than the criterion, then give me the last position.

Type 0: go LtoR/TtoB until you match the search criterion exactly and give me that position, or else give me #N/A if there is no exact match.

Type -1: go LtoR/TtoB until you hit the search criterion and give me that position or hit something smaller than the search criterion and give me the position right before that, or #N/A if there is no position before that because the first entry is already smaller. If nothing is equal to or smaller than the criterion, then give me the last position.

Also, the help page states:

LookupArray is the reference searched. A lookup array can be a single row or column, or part of a single row or column.

Type may take the values 1, 0, or -1. If Type = 1 or if this optional parameter is missing, it is assumed that the first column of the search array is sorted in ascending order. If Type = -1 it is assumed that the column in sorted in descending order. This corresponds to the same function in Microsoft Excel.

Here, the words “first column” are confusing. First, the paragraph before it allows for a row (and obviously MATCH works for a row) and, second, why say “first” if only one column is allowed? More than one column will result in a Err:504, in fact.