After 2 weeks of losing hair and sleep, this one article shows enough detail for me to move past 'hanging open' excel files and several other issues. I'm writing a tool that has to scan several hundred XLS files in a swamp of folders and extract specific data. Thank you for writing this article, my program will behave so much better for it.
I noticed your request for handling square brackets and other strange animals in links. Just use the hex representation for them, as in