Hi Matt,
Your formula shares the same weakness as Jerry noted in his initial offering on April 9, 2011.
COUNT(D), used in Jerry's formula, counts only the cells holding numerical values, so the row-offset it generates will be one too small for every cell above the last entry in column D that is empty or that contains a non-numerical value.
COUNTA(D), used in your formula, counts only the cells containing a value, so the row-index it generates will be one too small for every cell above the last entry in column D that is empty.

Note: These two statements from your post are correct, but not complete:
- The column 1 because I've only identified a single column (If my range was C:D, I would put 2 to look at D)
- Area index is optional and blank in this case
-column-index is needed only when range contains more than one column.
-area-index is needed only when range contains more than one collection of cells.
See the description and usage notes in the Function Browser for details.
The formula shown above is equivalent to yours, but eliminates the unnecessary column and area index arguments.
Badunit's use of an index column and a lookup function solves the issue of empty cells or cells containing non-numeric data in the target column by indexing only the rows containing a number, then returning the value from the row with the greatest index number.
Regards,
Barry