Error Handling in VBA
Is also awful - I mean coming at this from a .NET point of view VBA is just increadibly annoying, instead of the wonderful try..catch syntax you have:
(on err go to code block)
which basically gives you a place to go in your code if an error is triggered in the following block, you can pass error objects through this syntax though which means you end up having to nest things in horrible ways - I'll write this later too, the frustration even just thinking about VBA error handling..