Nov 11 2007
I’ve found that the trick to staying on top of email is to have a fast system for handling mail that requires no action on my part by getting it stored outside of my Inbox, as fast as possible. To do this, I’ve created a Macro in Outlook that moves the currently open email into a folder named for the Sender.
For this script to work, you must have a folder Called “People” under Inbox.
To implement this Macro in Outlook, go to Tools… Macro… Visual Basic Editor
You’ll see a blank workspace. Cut and paste the code below into the workspace.
Sub movetoPeople() On Error Resume Next ' We'll handle errors ourselves Dim myOlApp As New Outlook.Application Dim myNameSpace As Outlook.NameSpace Dim myInbox As Outlook.MAPIFolder Dim destprefix As Outlook.MAPIFolder Dim dest As Outlook.MAPIFolder Dim item As Object Dim fname As String Set myNameSpace = myOlApp.GetNamespace("MAPI") Set item = myOlApp.ActiveInspector.CurrentItem fname = item.SenderName Set destprefix = myNameSpace.GetDefaultFolder(olFolderInbox).Folders("People") If Err.Number <> 0 Then ' Check to see if anything has failed yet MsgBox (fname) MsgBox (destprefix) MsgBox "Problem" Exit Sub End If Set dest = destprefix.Folders(fname) If Err.Number <> 0 Then ' An error here means the folder doesn't exist Err.Clear destprefix.Folders.Add fname Set dest = destprefix.Folders(fname) End If item.Move dest If Err.Number <> 0 Then MsgBox "Problem" Exit Sub End If End Sub
Then just quit the Visual Basic Editor. It will automatically save your changes.
Now we want to add this Macro as a button on all of the emails we open.
- In Outlook 2007, open any email and right click on the Quick Access Toolbar.
- Select Customize Quick Access Toolbar…
- In the Choose commands from: pull down, select Macros.
- Select Project1.movetoPeople and hit the Add >> button. (I like to move the button to the bottom of the list so that it is easy to see on the Quick Access Toolbar.)
- Hit the Ok button, and notice that you email now has a little Macro icon/button. (You can change the icon by hitting the Modify… button before hitting Ok if you like.)
- Hit the folder button and the current email will be moved to the Inbox/People/SENDER folder.
If there isn’t already a folder named SENDER, the script creates it. The email is also closed and you are presented with the Inbox list of email.
If you want to call the folder something other than “People”, just change:
Set destprefix = myNameSpace.GetDefaultFolder(olFolderInbox).Folders(“People”)
to something else:
Set destprefix = myNameSpace.GetDefaultFolder(olFolderInbox).Folders(“SOMETHINGELSE”)
and make sure you’ve created the Inbox/SOMETHINGELSE folder.
Older versions of Outlook have similar methods of adding buttons to new emails.
The script is for Microsoft Outlook, but the methodology is built in to Eudora, and I’ve hacked it into GroupWise using a third party scripting application called Formativ. I haven’t figured out how to similarly enable Thunderbird yet, so any suggestions would be great!