A Dozen Things Outlook Doesn’t Do�but Should

David Coursey makes some gripes about what he thinks Outlook should do. His first one is Address Correction. Obviously, he’s never entered a foreign address into Outlook. Everytime I sent a Canadian address, Outlook’s address correction goes nutty on me and tries to ensure that all my contacts are actually in the US. Why? Must be the US Regional settings I’m using.

Anyways, some of this points are pretty good and he makes note of tools like NewsGator for RSS feeds (I was pretty sure MS would buy this company but now they have VC funding, maybe not).

One of his more interesting ones was the removal of duplicate messages. I actually have this problem regularly and here’s the program I wrote to get around it. The logic is such that if there are two identical messages, it will delete the unread one or the second one if both are unread. I use it regularly because I’m on multiple email lists (sales, support, dev) for some of my clients and therefore get LOTS of dup messages. Works great for me.

LOCAL loSpace

LOCAL loApp,loFolder,loMsg,lnmsgs,loMsg2

loApp = GETOBJECT(“”,”Outlook.application”)

loSpace = loApp.GetNameSpace(“MAPI”)

** Change this to go to whatever folder you want to get to.

loFolder = loSpace.Folders(“MailBox”).Folders(“Inbox”)

lnMsgs =loFolder.Items.Count

FOR lni = lnMsgs TO 2 STEP -1

loMsg = loFolder.Items(lni)

loMsg2 = loFolder.Items(lni-1)

IF loMsg.Subject = loMsg2.Subject ;

AND loMsg.SenderName = loMsg2.SenderName ;

AND loMsg.Body = loMsg2.Body

DO CASE

CASE loMsg2.Unread

loMsg2.Delete()

CASE loMsg.Unread

loMsg.Delete()

OTHERWISE

loMsg2.Delete()

ENDCASE

ENDIF

ENDFOR

A Dozen Things Outlook Doesn’t Do�but Should