Hi trexo,
Jerry's original solution, reproduced here, may be placed in any cell on the same table as the list of values in column B.
=OFFSET(B1, COUNT(B), 0)
It assumes that the first value in the list is in cell B2 (one row below the label in Row 1), and that (as you specified) there are no gaps in the data from that cell to the last one containing a value.
COUNT(B) counts the numerical values entered in column B; the result is used as the row-offset in the OFFSET function. Zero ( 0 ), the column-offset value in the formula, means 'the same column as the base, B1'.
Your Excel formula:
=index(D:D, Match(9.9999999999999E+307,D:D))
MATCH returns the position of the specified value in a list of values in a range.
The range here is column D, and the value to match (expressed as a base 10 number) is
99999999999999 followed by 294 zeroes, a rather large number, likely to be far greater than the largest number in column D.
MATCH in numbers can be set to find the largest close match, the smallest close match, or an exact match, with 'largest close match' the default choice. My assumption is that this is also true in Excel. If so, the expression in your Excel formula is looking for the "largest number in column D that is smaller than or equal to the search value."
IF the last number in the column is also the largest number in the column (and that number is smaller than 9.9999999999999E+307), then the formula will return the correct value. If the last value in column D is NOT also the largest value in column D, OR is larger than the search value, then the formula will not return the 'last value' in column D.
A Numbers similar to this would be:
=OFFSET(D1,MATCH(9.9999999999999E+307,$D)-1,0)
Here's an example, showing the results. The formula above is in B2; the same formula with the cell references changed to E1 and $E is in B3:
Note that both return the largest value in their column, not necessarily the 'last' value in that column.
Regards,
Barry