Importing Outlook 2010 Notes into OneNote 2010 – GTD


At the beginning of the year our company switch from Blackberry devices to iPhone. This caused my GTD productivity to drop significantly. I heavily relied upon the integration between the Blackberry Enterprise Server (BES), the Blackberry device, and Microsoft Outlook for my GTD effectiveness. The David Allen Company (DavidCo), that produces GTD, provided several guides integrating the systems from an end user perspective. I used following guides: GTD & BlackBerry, and GTD & Outlook (2007) (2010).  In the “Getting Things Done” book David Allen defines a project as: “…any commitment that takes more than one step to complete…”) I heavily rely on Outlook Tasks and Notes. I use Tasks to manage projects and Notes to manage lists. In these two sections of Outlook, I rely heavily on the ability to categorize them using Outlook categories.

The biggest problem with moving to the iPhone is that it has very poor, integration with Outlook Tasks. The iPhone does sync Tasks via Exchange ActiveSync, however, it does not support the syncing of Outlook categories. The iPhone also does not support the syncing Outlook Notes, including the categories. (Perhaps these are Active-Sync limitation, not sure).

I needed to find an alternate application to manage projects and lists. I need the application to be free and be available on my PC and my iPhone. Enter Microsoft OneNote. OneNote is included with the version of Microsoft Office 2010 that my company uses. There is also an iPhone app for OneNote. DavidCo does not have a OneNote setup guide. A quick Internet search found series of posts called “GTD with Outlook 2010 and OneNote 2010“. I used this guide to setup OneNote and link tasks to Outlook tasks. I also setup my default OneNote notebook to be on my Microsoft SkyDrive, so that I can access it on my iPhone. This allows me to have all the category and filtering ability that the iPhone lacks natively.

Importing Outlook 2010 Notes into OneNote 2010

There doesn’t appear to be a native import feature in OneNote or Outlook that will preserve categories. A few Internet searches found that this can be accomlished in two steps. I found that it is best to make sure everything is categorized properly first. Also, this is a good time to review your Notes lists for anything that is out of date and delete them.

  1. Cleanup lists – delete anything that is no longer needed and make sure everything is categorized properly.
  2. Export the Outlook Notes to .txt files in a folder on your PC (Article – Code to Export)
  3. Import .txt files into OneNote. (Article – Download Importer)

The .txt file names will be created using the first line of the Outlook Note. Something to note is that some characters are not valid in Windows file names. The script will change invalid characters to a hyphen.

Exporting Notes to .txt Files

This requires the use of VBA for Outlook.

  1. Start Outlook
  2. Hit Alt + F11
  3. In the left pane, drill down and select “This Outlook Session”
  4. Enter the Code below into the Code Section
  5. When done, you will have a new folder on your C Drive called “MyOutlookNotes. It will contain a subfolder for each category and each Note will be in it’s own.


Code for pasting into VBA for Outlook

Sub ExportNotes()

'WJ Pommersheim Dec 23, 2010

'Exports all of Outlook Notes (text) into text files,

'with separate folders for each category.

'These will be in c:\MyOutlookNotes, with subfolders by category

Dim fname As String, ibi As Integer

Dim myNote As Folder, myItem As NoteItem

Dim TopDir As String, TheCat As String

 TopDir = "c:\MyOutlookNotes\"

 If Len(Dir(TopDir, vbDirectory)) = 0 Then MkDir TopDir 'create top directory if necessary

 Set myNote = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderNotes)

 For ibi = 1 To myNote.Items.Count

 ChDir TopDir

 If myNote.Items(ibi).Class = olNote Then    'Text notes only

 Set myItem = myNote.Items(ibi)

 TheCat = Replace(myItem.Categories, "/", "-")

 fname = Replace(Replace(Replace(Replace(Replace(myItem.Subject, "\", "-"), "[", "("), "]", ")"), ":", ""), Chr$(34), Chr$(39))

 fname = Trim(Replace(Replace(Replace(Replace(fname, "/", "-"), "?", ""), "*", ""), Chr$(9), ""))

 fname = myItem.Subject

 If Right(fname, 1) = ")" Then fname = Left(fname, Len(myItem.Subject) - 3)  'Remove (#) if present

 fname = Right(fname, Len(fname) - InStr(fname, "\"))    'Remove folder text if present (old PDA format)

 If Len(Dir(TheCat, vbDirectory)) = 0 Then MkDir TheCat 'Need to create directory

 ChDir TopDir & TheCat

 Open fname & ".txt" For Output As #1  'This only saves note text, whereas item.SaveAs adds mod date, category

 Print #1, myItem.Body

 Close #1

 End If


End Sub

Import Text Files into OneNote 2010

The importer application and steps can be found here. Something to note is that each category will create a new OneNote Section and each individual Note will be a new page in that section. Also, you will need to rerun the import for each category.

  1. Launch the Text File Importer
  2. Point it to the folder that was created during the earlier export.

Once a category finishes importing, you should see a Done! dialog box.

Here, you can see the new OneNote Section with the 3 pages that were created for each Note.

Here you can see that I filed all the newly imported Sections into a Section group called Lists


I now have all my lists available to my in OnNote and they are finally available on my iPhone via the OneNote application.