An Outlook user relies heavily on Outlook’s Notes module but because he needs the notes synced to his phone, he’s decided to use OneNote. His problem: getting hundreds of notes from Outlook into OneNote without a lot of copy and pasting.
There are two methods that will “export” Outlook Notes (Journal entries or other Outlook items) to OneNote and both methods are easy to do.
If you want each note on a separate page: Select All (Ctrl+A) in Outlook’s Notes and then use the Send to OneNote printer.
This "prints" the note as an image (one note per OneNote page).
If you need the note in text format, right click on the image and choose Copy Text from page (at the top of the context menu) or, in OneNote 2016, Select text from image (at the bottom of the menu). Then Copy and Paste it into the OneNote note. Yes, it's still a lot of copy and paste, but the notes are in OneNote and the text in the image is searchable, so there is no rush to convert them.
Copy Text from page (using Adobe Blank font for the header):
If you have OneTastic installed, you can use Select Text from Image (at the bottom of the right click menu). Click the button to copy all test or select part of the text in the window then click the button.
If you want all notes in text format on one OneNote page: Select All of the Notes then File, Save as Text. Open the text file, select all, copy and paste it into a page in OneNote.
Send to me@onenote.com
Another option is sending the notes to the me@onenote.com service. First, sign in and enable me@onenote.com service, then send your notes to me@onenote.com. You need to send the notes as text in the message body, not as attachments. You can do this one at a time by dragging the note to the envelope icon or Mail in folder navigation or you can use a macro. A macro is definitely faster, however, if you forward too many at once, some may be rejected and bounce back.
This macro creates a message for each selected note, adding the categories, created and modified dates at the end of the note then sends it to me@onenote.com. In order to send a lot of notes at once without error, the macro uses deferred delivery to space the messages out, sending one about every 3 seconds (use with Send Immediately).
It can take some time for the messages to be processed and sync down to OneNote. (Printing to OneNote is much faster.)
To use, select the notes you want to move to OneNote and run the macro.
Public Sub SendOutlookNotes() Dim Session As Outlook.NameSpace Dim currentExplorer As Explorer Dim Selection As Selection Dim olMail As Outlook.MailItem Dim strCats As String Dim obj As Object Set currentExplorer = Application.ActiveExplorer Set Selection = currentExplorer.Selection i = 0 Defer = Now() + 0.000011574074 For Each obj In Selection With obj i = i + 1 If Not obj.Categories = "" Then strCats = vbCrLf & "Categories: " & obj.Categories End If Set olMail = Application.CreateItem(olMailItem) With olMail .Subject = i & " -- " & Left(obj.Subject, 50) .Body = obj.Body & vbCrLf & _ "Created on: " & obj.CreationTime & vbCrLf & vbCrLf & _ "Last Modified on: " & obj.LastModificationTime & strCats .Recipients.Add "me@onenote.com" .DeferredDeliveryTime = Defer Debug.Print "Now: " & Now() & " Defer until: " & Defer .Send End With End With Defer = Defer + 0.000031574074 Next MsgBox "You sent " & i & " notes to OneNote." Set Session = Nothing Set currentExplorer = Nothing Set obj = Nothing Set Selection = Nothing End Sub
How to use macros
First: You will need macro security set to low during testing.
To check your macro security in Outlook 2010 or 2013, go to File, Options, Trust Center and open Trust Center Settings, and change the Macro Settings. In Outlook 2007 and older, it’s at Tools, Macro Security.
After you test the macro and see that it works, you can either leave macro security set to low or sign the macro.
Open the VBA Editor by pressing Alt+F11 on your keyboard.
To put the code in a module:
- Right click on Project1 and choose Insert > Module
- Copy and paste the macro into the new module.
More information as well as screenshots are at How to use the VBA Editor
Thanks for sharing. I used a modified version of your macro to migrate my Notes from Outlook to Google Keep. More details here:
https://github.com/lambrospetrou/gmail-keep-importer/issues/8