Here's some bedtime reading:
http://analystcave.com/vba-application-filedialog-select-file/
I've used it successfully, but not in a restrictive way, although the text explains how to set up filters.
The downside is that filedialog requires Microsoft Office 11.0 Object Library, which is not...