One way to automatically archive objects from Outlook is to use rules. To do so, first create a folder on your local computer (e.g. Then, from the Tools menu, select Rules.
Archive messages in Outlook for Mac. Choose one or more messages in your folder to archive. On the ribbon, choose Archive. As soon as you choose Archive, messages are immediately moved to the archive folder you've specified. If you archive a message by mistake, go to the archive folder and move the message back to your. In Microsoft Outlook 2010/2013, you might not see the Archive command intuitively in the ribbon and need to find it on the left sidebar. On the File tab, select Info, click Cleanup Tools option and from the drop-down menu you can easily see the Archive command at the bottom.
Create a rule by clicking on the plus sign (let’s just call it Archiving) and then click Date Received in the “When a new message arrives: section. Configure the middle field as “is Greater than or equal to” and then configure the number of days (e.g. In the “Do the following:” section, choose “Move message” and then choose the archive folder you created in the previous step. Finally, check the box for Enabled and you’ve got a pretty simple automated rule to move messages off your Exchange server and onto your local computer. To move existing mail, click Rules from the Message menu and then click on the name of the rule. Once done, click on the Outlook menu and then click on Preferences.
Click General and then in the Folder list section, check the box for “Hide On My Computer folders”. The only problem with this method is that mail is just getting dumped into a folder on your local computer. Mail is searchable, but not stored in a.pst file as with the old school keep it on a mapped drive method frequently used with Outlook for Windows. These folders can be exported into.mbox files by dragging a folder to the desktop.
The maximum size of the file is 2.15 gigs. The.mbox file can then be imported using the Import option under the File menu and then clicking on the.mbox file in question. Another, more automated and old fashioned way to archive mail is to use Outlook Email Archive X, a tool that takes care of much of the tasks you just did. This tool, from softhing.com, is available at I like Outlook Email Archive X because I can drop emails back into outlook because they’re stored in.eml files. These are also indexed using Spotlight.
To install Outlook Email Archive X, extract the dmg from the downloader. Then drag the OEAX folder to the /Applications folder. Modern Exchange and Office 365 instances provide archival options, as do tools such as GFI. Outlook is pretty much AppleScriptable. So you should be able to automate this stuff if you so choose if you don’t have access to any of the other tools.
While this question is fairly old, I believe the techniques in would work for this, because it sounds like exactly what the original question is looking for. In the interest of trying to prevent the worst losses of bit-rot, here's the relevant block of code. The actual article has much more detail on what it's doing and possible enhancements such as adding recursion; this appears to work on just a single folder ('Inbox') and can probably be used as a starting point. Sub MoveOldEmails ' Declare all variables. Dim objOutlook As Outlook.Application Dim objNamespace As Outlook.NameSpace Dim objSourceFolder As Outlook.MAPIFolder Dim objDestFolder As Outlook.MAPIFolder Dim objVariant As Variant Dim lngMovedMailItems As Long Dim intCount As Integer Dim intDateDiff As Integer Dim strDestFolder As String ' Create an object for the Outlook application. Set objOutlook = Application ' Retrieve an object for the MAPI namespace.
![Dates Dates](https://www.scrubly.com/blog/wp-content/uploads/2013/08/aug21_36.jpg)
![Archive emails in outlook for mac by date 2016 Archive emails in outlook for mac by date 2016](https://i.ytimg.com/vi/56i5A7nvT5M/maxresdefault.jpg)
Set objNamespace = objOutlook.GetNamespace('MAPI') ' Retrieve a folder object for the source folder. Set objSourceFolder = objNamespace.GetDefaultFolder(olFolderInbox) ' Loop through the items in the folder. NOTE: This has to ' be done backwards; if you process forwards you have to ' re-run the macro an inverese exponential number of times. For intCount = objSourceFolder.Items.Count To 1 Step -1 ' Retrieve an object from the folder. Set objVariant = objSourceFolder.Items.Item(intCount) ' Allow the system to process.
(Helps you to cancel the ' macro, or continue to use Outlook in the background.) DoEvents ' Filter objects for emails or meeting requests. If objVariant.Class = olMail Or objVariant.Class = olMeetingRequest Then ' This is optional, but it helps me to see in the ' debug window where the macro is currently at. Debug.Print objVariant.SentOn ' Calculate the difference in years between ' this year and the year of the mail object. IntDateDiff = DateDiff('yyyy', objVariant.SentOn, Now) ' Only process the object if it isn't this year. If intDateDiff 0 Then ' Calculate the name of the personal folder. StrDestFolder = 'Personal Folders (' & Year(objVariant.SentOn) & ')' ' Retrieve a folder object for the destination folder.
Set objDestFolder = objNamespace.Folders(strDestFolder).Folders('Inbox') ' Move the object to the destination folder. ObjVariant.Move objDestFolder ' Just for curiousity, I like to see the number ' of items that were moved when the macro completes. LngMovedMailItems = lngMovedMailItems + 1 ' Destroy the destination folder object. Set objDestFolder = Nothing End If End If Next ' Display the number of items that were moved.
MsgBox 'Moved ' & lngMovedMailItems & ' messages(s).'