Reply All to Multiple Messages


A reader named Savio requested a solution enabling him to “reply all” to multiple messages at once. Here is that solution.

Sub ReplyAllToAllSelected()
    Dim olkMsg As Object, olkRpl As Outlook.MailItem
    For Each olkMsg In Application.ActiveExplorer.Selection
        If olkMsg.Class = olMail Then
            Set olkRpl = olkMsg.ReplyAll
        End If
    Set olkMsg = Nothing
    Set olkRpl = Nothing
End Sub


This solution should work in all versions of Outlook from 2003 on.


Follow these instructions to add the code to Outlook.

  1. Start Outlook
  2. Press ALT + F11 to open the Visual Basic Editor
  3. If not already expanded, expand Microsoft Office Outlook Objects
  4. If not already expanded, expand Modules
  5. Select an existing module (e.g. Module1) by double-clicking on it or create a new module by right-clicking Modules and selecting InsertModule.
  6. Copy the code from the code snippet box and paste it into the right-hand pane of Outlook’s VB Editor window
  7. Click the diskette icon on the toolbar to save the changes
  8. Close the VB Editor

Using the Solution.

Select one or more messages then run the ReplyAllToAllSelected macro. The macro will create a reply to each selected message and display it on screen. You can then add your reply and send the message.

Adding Buttons to Run the Macro with a Single Click.

If Savio wants to run the macro with a single click, then he’ll need to add a toolbar button in Outlook 2007 or a button on the Quick Access Toolbar (QAT) for Outlook 2010. Here’s how.

  • Outlook 2007. Follow these instructions to add a toolbar button that runs the macro.
  • Outlook 2010 – 2016. Follow these instructions to add the macro to the QAT.

Forward Messages at Certain Times of the Day


Today, while checking questions on Experts-Exchange, I stumbled across one where the author is looking for a way to forward messages during certain times of the day. S/he had found a potential solution on another blog, but was unable to get it to work. I had a look at that solution, and while it’s both clever and functional, I think there’s a simpler way to go about this and that’s to use a macro.
Continue reading

Syncing an Outlook Calendar to the Cloud


A reader named Todd commented on my post Exporting Email Info for Panic’s StatusBoard saying

David I would love to try something similar to create an iCal export at timed intervals to the cloud and then use that in Google calendar now that the sync function is not supported in google calendar….say from Outlook 2010??

Exporting the calendar info in iCal format is surprisingly easy as long as you have Outlook 2007 or later. The export is all handled via the GetCalendarExporter method of any Outlook Folder object that points to a calendar. In this case, I’m assuming that Todd wants to export his primary (i.e. default) calendar. If he wants a different calendar, then that’s possible too, but will require more code. Since Todd wants to schedule the export, I’ve written the solution in VBScript. This allows Todd to create a scheduled task using Windows Task Scheduler that will run the script at whatever interval he desires. Todd didn’t say where in the cloud the export needs to go, so I wrote the solution under the assumption that Todd can reach the cloud through a normal file share. If that’s not possible and the cloud target is only reachable via FTP or something similar, then the solution would require some additional code. Once the solution runs, Todd can subscribe to the calendar in Gmail just as he could to any other internet calendar.
Continue reading