I love index match. -much more flexible than vlookup..
But is there an approximate match option? Seems to be either exact/more/less.
Also, does index match work with duplicate matches to return both?
Not sure what you mean by approximate. There are certainly no other options (-1, 0, 1), but you should be able to pick up the appropriate values with one of those options on most scenarios.
Duplicates only comes up with the exact match option, and it will return the first position in the vector that matches, thereby ignoring any others. There are (fairly tedious) ways around this.
Eta: If you give specific examples for your 2 questions I can try to formulate solutions, but a lot of times it ends up being way more complex than just the INDEX-MATCH.