Got in late here...

My three tips are:

1) READ THE INSTRUCTION MANUAL

2) READ THE INSTRUCTION MANUAL AGAIN

3) READ THE BLOODY INSTRUCTION MANUAL!!

1) Always use all the properties and methods that are documented in the VBA Help files except for those few that the Help files specifically caution you against using (e.g. While_Wend is one such that's best avoided). It may not always be obvious, but there's always a reason for them to be included.

2) Always heed the advice and tips given in the VBA Help files (for example, you're advised to use Option Explicit). Except for the very few that, in the fullness of time, have shown to be incorrectly documented.

3) The Set MyObject = Nothing statement only 'releases' the piddling amount of memory contained in the variable that refers to the object. (The set statement simply cannot release any 'object' that wasn't even created - and an object is only created when Set is used in conjunction with the New keyword). However, if you don't really understand all the preceding, using Set MyObject = Nothing creates very little overhead )

Nothing wrong with using defaults, seriously, who on earth uses either Excel.ActiveWorkbook.ActiveSheet.Range("A1").Value = "Yes" or Application.ActiveWorkbook.ActiveSheet.Range("A1").Value = "Yes" or even
Excel.Application.ActiveWorkbook.ActiveSheet.Range("A1").Value = "Yes" everything preceding "Range" is the default, as long as you're quite clear about that and always keep it in mind there's no problems.

If default properties were not meant to be used, the creators of visual basic would not have taken the time to write the code to cater for them. Everyone would then be bound to ALWAYS explicitly write their code in a form similar to one of the above.

But - a cautionary word here - if you are going to rely on default properties ALWAYS MAKE SURE YOU KNOW EXACTLY WHAT THEY ARE - when you're coding in VBA you're speaking visual basics' language, so learn to 'speak' the language properly - visual basic is quite literal and knows exactly what all the defaults are (they've been hard-coded into it) - so you have to ensure that you are always referring to the exact same thing that visual basic is.

Comment your code as much or as little as is required to let its intent be known to all those unfamiliar with the method or technique used (if others can't be bothered reading your comments then that's their problem).

Personally, I use Call simply for documentation purposes...

I just LOVE being the devils advocate...