Comments inline.

Signature
Sue Mosher, Outlook MVP
Author of Configuring Microsoft Outlook 2003
http://www.turtleflock.com/olconfig/index.htm
and Microsoft Outlook Programming - Jumpstart for
Administrators, Power Users, and Developers
http://www.outlookcode.com/jumpstart.aspx
> Ok, at work we use Outlook and when you open a new contact, it opens a new
> contact in your personal contacts. However, in order to ensure we can all use
[quoted text clipped - 4 lines]
> there a quicker route via any of the following (many at my works are too
> computer illiterate and will just click on "New" and then "Contact" :
No, that's not the only way. First of all, if it's a contacts folder you use often, you should put in Public Folder\Favorites. That will make for a lot fewer branches. Second, you can create a new contact and save it in a non-default folder directly by using the File | Move to Folder command instead of Save and Close. (I know that won't help the computer users who have trouble just finding the New button, but it may help others.)
> 1) Can someone tell me some suitable macro code to assign to a new button
> which would effectively open up the public folder and then choose a new
> contact? It's such a shame that Outlook doesn't have a record macro feature
Are you aware that Outlook VBA code is for personal use and has no supported means for distributing throughout an organization? If this is for organizational use, VBA isn't suitable. You should be considering using a COM add-in, which is a more complex programming project, instead.
> 2) Is there a way to get the public folder to be a default folder?
No.
> 3) Lastly, a more complex solution invoving the public folder overwriting
> our personal folders every day (but this doesn't really fix the problem)
See http://www.slipstick.com/outlook/sync.htm for ideas.