#1. You can check the portion of the formula that returns the error. In this
case, it's the match() portion. Then have your formula do nice things:
=IF(ISERROR(MATCH(MAX(C:C),C:C,0)),"",INDEX(D

,MATCH(MAX(C:C),C:C,0)))
#2. I can't! But that doesn't mean that it's not able to be done. If you
don't get any help in .misc, you may want to head over to .worksheet.functions
and post there. The people who spend lots of time in that newsgroup have their
head on weird and can do miraculous stuff with formulas.
#3. The worksheet funtion =max(c:c) returns the largest in a list of numbers.
There's another worksheet function that can find the nth largest in a list.
=large(range,N)
=IF(ISERROR(MATCH(LARGE(C:C,2),C:C,0)),"",INDEX(D

,MATCH(LARGE(C:C,2),C:C,0)))
One thing to worry about (needlessly???) is that if the largest and the second
largest dates are the same. Then the match will find the first in the list--no
matter which one you're looking for--and return the cell adjacent.