I have only ever read one book about VBA and that’s “Excel 2007 VBA Programming for dummies” was a great book for the basics in Excel. The rest I learned from forums, google searches and experience within my workplace.
I used to (and still do) google my question with “VBA” at the end, you will be amazed at what you find.
make sure you always gain a full understanding of the code before you use it, this way you learn.
Sorry if it’s a bit lame but this is how I have learnt over the last 10 years.