COM Add-ins and VBA Stop Working When You Move to the New Outlook — How to Replace Your Business Automation

· · Outlook, New Outlook, COM Add-ins, VBA, Office Add-ins, Power Automate, Microsoft Graph, Exchange Online, Business Automation

Post on X
Revision history (first version, published Nov 1, 2026)
First published
Cite this article(DOI: 10.5281/zenodo.23856512)

This article is archived on Zenodo. Below are both the DOI that always resolves to the latest version and the DOI pinned to the version you are reading.

Go Komura (2026). COM Add-ins and VBA Stop Working When You Move to the New Outlook — How to Replace Your Business Automation. KomuraSoft LLC. https://doi.org/10.5281/zenodo.23856512 https://comcomponent.com/en/blog/new-outlook-com-addin-vba-migration/

DOI (latest version)
10.5281/zenodo.23856512
DOI (this version)
10.5281/zenodo.23856513

Outlook for Windows now comes in two forms: the existing desktop version (classic Outlook) and the new Outlook for Windows. The new Outlook cannot use COM add-ins, VBA macros or the Outlook object model (OOM)1. An add-in that checks recipients before sending, a macro that saves attachments from incoming mail, and a tool that sends mail by driving Outlook from Excel all stop working once users move to the new Outlook.

The short answer has three points. First, classic Outlook is supported until at least 2029, and there will be notice before the switch, so you have time to identify the automation that will stop2. Second, choose a replacement for each piece of automation you find based on where the processing runs. For checks before sending, the candidate is an Outlook web add-in; for processing triggered by incoming mail or a time of day, Power Automate or Microsoft Graph; and for applying the same processing to everyone’s mail in the organization, Exchange Online mail flow rules. Third, none of these can do everything VBA or COM add-ins could, so for processing that cannot be replaced, decide how long it stays on classic Outlook.

This article is for companies using Outlook with work accounts on Microsoft 365 (Exchange Online), and for IT staff who maintain automation built on Outlook. Statements about timing are based on Microsoft documentation consulted as of November 1, 2026.

What stops working in the new Outlook

In Microsoft’s feature comparison table, the following items are “Available” in classic Outlook and “Not supported” in the new Outlook1.

Item Automation mainly affected
COM add-ins Add-ins built into Outlook, such as pre-send checks and integration with document management or customer management systems
VBA macros Macros written in Outlook’s VBA editor
Outlook object model (OOM) Tools that drive Outlook from Excel VBA, PowerShell, C# and so on
MAPI Tools that work with mailboxes through MAPI
Import/export of rules Practices of exporting rules to a file and moving them to another PC

In the same table, rules, Quick Steps, .pst files and offline use are “Partially available”1. This means the feature exists, but not necessarily with everything classic Outlook offers.

On COM add-ins, Microsoft’s developer documentation states that the new Outlook does not support VSTO and COM add-ins, in order to provide a more reliable and stable add-in experience3. Add-ins built with .NET VSTO are included. To use the same functionality in the new Outlook, you need to migrate to an Outlook web add-in. VSTO and COM add-ins continue to work in classic Outlook3.

In classic Outlook, VBA macros run through a COM add-in called “Microsoft VBA for Outlook Addin,” and in many cases they call the OOM4. The OOM is the set of Outlook objects, properties, methods and events, and it is what the VBA reference documents5.

What is easy to overlook is tools that drive Outlook from outside Outlook. Calling CreateObject("Outlook.Application") from Excel VBA to start Outlook, compose a message and send it is a way of using the OOM that is described in Microsoft’s VBA documentation6. Tools that drive Outlook in the same way from PowerShell or C# also use the OOM. The new Outlook has no OOM, so these tools do not work on PCs without classic Outlook either.

Mechanisms that stop working in the new OutlookShows that COM add-ins, VBA macros and external tools that use the OOM run only on classic Outlook and cannot be used in the new Outlook, while Outlook web add-ins run in both.Business automation using OutlookCOM add-ins (including VSTO)VBA macrosExternal tools using the OOMOutlook web add-insRun only in classic OutlookRun in both OutlooksStop when users move to the new Outlook

Figure 1: COM add-ins, VBA macros and external tools that use the OOM run only in classic Outlook; web add-ins run in both.

In the diagram a solid line marks a relation that always holds and a dashed line marks a conditional one (the conditions are given per relation on the detail page). The full list of relations (14 in total, with evidence and certainty) and the definitions of the main concepts are collected on the knowledge map detail page (in Japanese). Data: JSON-LD / Turtle

The three stages of the switch and their timing

Microsoft explains that migration to the new Outlook proceeds in three stages: opt-in, opt-out and cutover2.

  • Opt-in: A “Try the new Outlook” toggle appears at the top right of classic Outlook. The new Outlook is off by default; users can try it and return to classic Outlook if needed. The two can also run side by side. According to the documentation updated on February 23, 2026, this is the current stage.
  • Opt-out: The new Outlook is on by default, and users are moved to it automatically. Even at this stage, they can return to classic Outlook if needed. For managed Enterprise plans, administrators are to be notified at least 12 months in advance.
  • Cutover: Users can no longer return to classic Outlook, and newly deployed Outlook under Microsoft 365 subscriptions is the new Outlook. Notice is to be given at least 12 months before this happens in the production ring.
The three stages of migration to the new OutlookShows that in opt-in users can try the new Outlook and return to classic Outlook, in opt-out users move to the new Outlook by default but can return, and in cutover they can no longer return; that there is at least 12 months' notice before opt-out and before cutover; and that existing classic Outlook is supported until at least 2029.Opt-in (off by default, users can try it)At least 12 months' noticeOpt-out (on by default, can return)At least 12 months' noticeCutover (cannot return)Existing classic Outlook supported until at least 2029

Figure 2: Migration proceeds in three stages, with notice before opt-out and before cutover.

Microsoft 365 Message Center post MC949965 (updated February 20, 2026) announced that the start of the opt-out stage in Enterprise environments had been moved from April 2026 to March 20277. The same notice states that users excluded by the opt-out policy, users for whom the toggle is hidden, users with perpetual licenses, and users with on-premises accounts are not subject to the migration, and that migrated users can return to classic Outlook. The timing of cutover was not stated in the documentation I consulted.

Even after cutover, existing installations of classic Outlook from perpetual licenses and subscriptions are supported until at least 20292. There is no need to rush to replace everything, but once opt-out begins, users will move to the new Outlook unless you do something. Identify the automation that would stop at that point before opt-out begins.

Using the new Outlook requires a Microsoft 365 work or school account connected to Exchange Online. According to the developer documentation, the new Outlook does not currently support Exchange accounts that are on-premises, hybrid or in sovereign clouds3.

Settings that hold off migration until replacements are ready

If some departments have not finished their replacements, administrators can delay migration with the following settings8.

  • Hide the toggle in classic Outlook with the cloud policy “Hide the “Try the new Outlook” toggle in Outlook” in the Microsoft 365 Apps admin center.
  • Disable (0) the policy “Manage user setting for new Outlook automatic migration” to stop automatic migration to the new Outlook. In the registry, this corresponds to the NewOutlookMigrationUserSetting value. This policy does not apply to migration through “Admin-Controlled Migration to New Outlook,” which the administrator drives.
  • Use an Exchange mailbox policy to prevent work mailboxes from being added to the new Outlook.
Administrator settings that delay migrationShows that three settings, a cloud policy that hides the toggle, a policy that stops automatic migration, and a mailbox policy that stops mailboxes being used in the new Outlook, let you keep using classic Outlook until replacements are ready.Administrator settingsHide the toggleStop automatic migrationBlock mailboxes in the new OutlookUse classic Outlook until replacements are ready

Figure 3: Administrators can use three settings to delay migration until replacements are ready.

These settings only buy time; they do not change when support for classic Outlook ends. Move the replacements forward while migration is on hold.

Identifying the automation that will stop

The first step is to build a list of the automation that depends on Outlook. Investigate in the following order.

  1. List the COM add-ins. On the Inventory page of the Microsoft 365 Apps admin center, you can see and export the COM add-ins installed on your users’ PCs4. If you need a per-PC list, collect the registry keys where add-ins are registered using a device management tool such as Intune. According to the VSTO add-in documentation, add-ins installed for all users are registered under HKEY_LOCAL_MACHINE\Software\Microsoft\Office\Outlook\Addins, and add-ins used only by the user who installed them are registered under the same path in that user’s HKEY_CURRENT_USER. Add-ins deployed with ClickOnce are registered only in HKEY_CURRENT_USER. On 64-bit Windows, add-ins for all users may also be registered under HKEY_LOCAL_MACHINE\Software\WOW6432Node\Microsoft\Office\Outlook\Addins9. If you collect only HKEY_LOCAL_MACHINE, you will miss add-ins installed per user. Users can check the add-ins on their own PC in Outlook under File > Options > Add-ins.
  2. Check whether VBA macros exist. Even if “Microsoft VBA for Outlook Addin” is installed, that does not mean macros are in use. Microsoft’s documentation gives opening the VBA editor and seeing whether it contains anything as the simplest way to check4. Also ask users whether their rules call macros.
  3. Look for tools that drive Outlook from outside. Search Excel macro-enabled workbooks, PowerShell scripts and in-house C# applications for the strings Outlook.Application and Microsoft.Office.Interop.Outlook. Scripts that run periodically from Task Scheduler are also in scope.
  4. For each piece of automation you find, write down what it does. Fill in the items in the following table.
Steps for identifying the automation that will stopShows the flow of listing COM add-ins from the admin center and from the per-user and machine-wide registry, checking whether VBA macros exist, searching for tools that drive Outlook from outside by string, and recording the trigger and inputs and outputs of each piece of automation to prepare for choosing a replacement.List the COM add-insCheck whether VBA macros existLook for tools that drive Outlook from outsideRecord the trigger, inputs and outputs of eachChoose a replacement

Figure 4: Search for add-ins, macros and external tools in that order, and record the contents of each one you find.

Item to record Examples of what to write
Trigger When the Send button is pressed, when mail is received, every morning at 9:00, when a button in Excel is pressed
Input Recipients, subject, body, attachments, an Excel table
Output Stop the send, save a file to a folder, register in a system, send mail
Users The whole company, a particular department, a particular person
Impact if it stops The check for misdirected mail is skipped, invoice processing is delayed, and so on
Author and documentation In-house staff or an outside vendor, whether source code exists

When you take inventory, Microsoft’s own COM add-ins also appear in the list. Microsoft’s documentation shows alternatives for add-ins such as the Teams meeting add-in that have built-in features in the new Outlook, and for those that have already served their purpose4. Handling them separately from add-ins made in-house or by outside vendors narrows down what you need to consider replacing. How to audit Excel macros broadly is explained in “A VBA and in-house tool audit guide to prepare for the deprecation of VBScript.”

Four options for replacement

Replacements fall into four groups depending on where the processing runs.

  • Outlook web add-ins: run inside the user’s Outlook while a message is being composed or read.
  • Power Automate cloud flows: run in Microsoft’s cloud, triggered by incoming mail or a time of day.
  • Microsoft Graph: your own programs or scripts call the API to send mail or read received mail.
  • Exchange Online mail flow rules: run on Exchange Online servers and apply conditions and actions to mail in transit.
Where processing runs for each replacementShows that Outlook web add-ins run inside the user's Outlook, Power Automate cloud flows in Microsoft's cloud, Microsoft Graph is called from your own programs, and mail flow rules run on Exchange Online servers while mail is in transit.Where processing runsThe user's OutlookMicrosoft's cloudYour own programsIn transitWeb add-inCloud flowGraph APIMail flow rules

Figure 5: The four replacements differ in where the processing runs.

VBA and COM add-ins ran inside Outlook on the user’s PC, with access to both the mailbox and files on the PC. In the replacements, that processing is divided up by where it runs. A single VBA macro is sometimes replaced by two pieces, a web add-in and a Power Automate flow.

Outlook web add-ins

Outlook web add-ins use the Office Add-ins platform and are built with HTML and JavaScript. They run in both the new Outlook and classic Outlook, and can also be used in Outlook on the web and Outlook for Mac3. Users switching to the new Outlook for the first time can choose whether to bring their classic Outlook add-ins. COM add-ins cannot be used, so if a corresponding web add-in exists, that is installed instead3.

To replace pre-send checks, use event-based activation and Smart Alerts. Event-based activation starts an add-in without any user action in response to events such as composing a new message, changing recipients or adding an attachment10. Smart Alerts uses this mechanism to run processing on the OnMessageSend event after the user presses Send11. It can check whether an attachment was forgotten or an external recipient slipped in, and if the conditions are not met, stop the send and display the reason. OnMessageSend was introduced in Outlook requirement set 1.1211.

What happens when the conditions are not met, or when the add-in cannot be loaded, is set by the send mode in the manifest11.

Send mode When conditions are not met When the add-in cannot be loaded
prompt user The user can send with “Send Anyway” The message is sent
soft block (default) Cannot send until the problem is fixed The message is sent
block Cannot send until the problem is fixed Cannot send
How behavior differs by Smart Alerts send modeShows that when Send is pressed the Smart Alerts add-in checks the conditions and the message is sent if they are met; if not, prompt user lets the user choose whether to send, and soft block and block prevent sending until the problem is fixed; and when the add-in cannot be loaded, only block stops the send.MetNot metThe user presses SendThe add-in checks the conditionsThe message is sentDepends on the send modeprompt user: the user chooses whether to sendsoft block / block: cannot send until fixedThe add-in cannot be loadedOnly block stops the send

Figure 6: What happens when the conditions are not met and when the add-in cannot be loaded depends on the send mode.

The skeleton of the processing when Send is pressed looks like the following. This is an illustration of the mechanism, not code that has been run and verified as is. You also need to specify the event and send mode in the manifest separately.

// Illustration: skeleton of Smart Alerts send-time processing (not verified to run)
function onMessageSendHandler(event) {
  // Check recipients, subject, attachments and so on here
  const passed = true; // Result of the check

  if (passed) {
    event.completed({ allowEvent: true });
  } else {
    event.completed({
      allowEvent: false,
      errorMessage: "Before sending attachments to external recipients, please check the recipients."
    });
  }
}

Office.actions.associate("onMessageSendHandler", onMessageSendHandler);

Web add-ins have constraints that VBA and COM add-ins did not.

  • Event-activated add-ins start automatically only when an administrator deploys them from the Microsoft 365 admin center10. Add-ins that use the block send mode cannot be published in Microsoft Marketplace and are limited to deployment by the organization’s administrator11.
  • Event-activated add-ins need an internet connection to start. They time out about 300 seconds after starting10. If send-time processing takes longer than 5 seconds, a dialog tells the user that it is taking a while11. The documentation recommends finishing heavy checks in advance on the events fired when recipients or attachments change.
  • In the new Outlook, add-ins cannot be used offline3. If you want the pre-send check to run even when Outlook starts offline, enable the Exchange Online mailbox policy OnSendAddinsEnabled. When it is enabled, mail sent offline is not sent but saved to Drafts11.
  • Not everything COM add-ins could do can be done with web add-ins. In the coverage table in the developer documentation, message encryption and data synchronization with external systems are only partly supported, and proofreading text while it is being written is not supported3.

Power Automate cloud flows

Processing triggered by incoming mail can be moved to Power Automate cloud flows. The Office 365 Outlook connector trigger “When a new email arrives (V3)” receives incoming mail, and the flow can save attachments or pass the contents to another system. Sending mail based on an Excel table can be built with the action “Send an email (V2)”12.

Cloud flows run in Microsoft’s cloud, so they do not depend on which Outlook the user is using. They run even when the user’s PC is off.

A cloud flow that saves attachments from incoming mailShows the flow in which, when mail arrives, the Office 365 Outlook connector trigger starts the flow, the attachments are retrieved with a separate action and placed in the destination, and the person in charge is notified.Mail arrivesTrigger: When a new email arrives (V3)Retrieve the attachmentsPlace them in the destinationNotify the person in charge

Figure 7: Triggered by incoming mail, retrieve and save the attachments, then send a notification.

The connector documentation includes the following cautions12.

  • It requires an Office 365 mailbox with the REST API enabled. Mailboxes on an on-premises Exchange Server may cause errors.
  • If “Include Attachments” is set to “Yes” on the trigger, it waits until all attachments have been downloaded. When many messages with attachments arrive at once, this can time out, so the documentation recommends setting it to “No” and retrieving attachments with the action “Get Attachment (V2).”
  • The maximum size of message content is 49 MB.

How to build a flow that saves attachments is covered in “Automatically processing order and invoice PDFs that arrive by email with Power Automate,” and how much Excel VBA can be moved to Power Automate is covered in “Migrating Excel VBA macros to Power Automate.”

Microsoft Graph

Microsoft Graph exposes Microsoft 365 data and functionality as a REST API. The mail API works with users’ mailboxes and shared mailboxes in Exchange Online13. Sending mail is POST /me/sendMail and requires the Mail.Send permission. When the request is accepted, 202 Accepted is returned, and by default the sent message is saved to Sent Items14. The attachments of a received message can be listed with GET /me/messages/{id}/attachments, which requires the Mail.Read permission15.

Tools that sent mail from Excel VBA through the OOM can be replaced by calling Graph from a server or a script. Outlook is not started, so they work even if the user’s PC has no Outlook.

Replacing a tool that sends through the OOM with Microsoft GraphShows that before the replacement, Excel VBA drives classic Outlook through the OOM to send mail, and after the replacement, your own program or script calls Microsoft Graph sendMail and the mail is sent from Exchange Online.AfterBeforeCall Microsoft Graph sendMailYour own program or scriptSend mail from Exchange OnlineDrive classic Outlook through the OOMExcel VBASend mail

Figure 8: Instead of driving Outlook, call the Graph API from a program.

The request body passed to sendMail looks like this. The recipient and body are example values.

{
  "message": {
    "subject": "Sending our quotation",
    "body": {
      "contentType": "Text",
      "content": "Please find our quotation attached."
    },
    "toRecipients": [
      { "emailAddress": { "address": "customer@example.com" } }
    ]
  }
}

To use Graph from a program, you need to register an app in Microsoft Entra ID and grant permissions such as Mail.Send. Decide with your Microsoft 365 administrator which mailbox mail is sent from and who manages those permissions. How to use Graph from PowerShell is explained in “Introduction to Microsoft Graph PowerShell.”

Exchange Online mail flow rules

Mail flow rules (also called transport rules) find messages that match conditions among the mail flowing through an Exchange Online organization and apply actions to them. They run in transit, not inside the user’s Outlook16. Conditions can be based on the subject, body, attachments, recipients and so on, and actions include rejecting, redirecting to another recipient, adding recipients, prepending words to the subject and inserting a disclaimer.

Where mail flow rules runShows that whichever Outlook a user sends from, the mail passes through Exchange Online delivery, where mail flow rules apply actions such as rejecting, redirecting, adding recipients or inserting a disclaimer to matching mail before it reaches the recipients.Send from the new OutlookExchange Online deliverySend from classic OutlookMail flow rules check the conditionsReject, redirect, add recipients, disclaimer, etc.Delivered to the recipients

Figure 9: Mail flow rules run in transit no matter which Outlook the mail was sent from.

The same rules apply no matter which Outlook the mail is sent from, so they suit processing you want enforced company-wide without exception. On the other hand, because they run in transit, they are not suited to having the user confirm something on screen at the moment of sending, as Smart Alerts does. After a rule is created or changed, it can take up to 30 minutes before it is applied to mail16. Rules are configured in the Exchange admin center or with PowerShell, so it is administrators who create and fix them.

Decision table: common automation and its replacements

Applying the four options so far to automation commonly built in Outlook gives the following.

Automation Example of how it is built in classic Outlook First candidate Next candidate and cautions
Pre-send checks (recipients, attachments, subject) COM add-in, VBA macro Smart Alerts in a web add-in For conditions you want to block company-wide without exception, mail flow rule rejection or redirection can also be used
Saving attachments from received mail VBA macro called from a rule Power Automate cloud flow For high volumes or custom processing, a program that calls Graph
Registering mail contents in an in-house system COM add-in, VBA macro Power Automate or Graph if triggered by receipt If users pick a message to register, a web add-in task pane
Sending mail in bulk based on an Excel table OOM from Excel VBA Power Automate “Send an email (V2)” For high volumes or combining with other systems, Graph sendMail
Running a VBA macro from a rule A rule action that calls a macro The replacement in the rows above, depending on what the macro does If it only sorts mail, check whether rules in the new Outlook are enough
Applying the same processing to everyone’s mail (inserting a disclaimer, adding recipients) COM add-ins or VBA macros on each PC Mail flow rules Not suited to processing where the user confirms on screen at the moment of sending

The candidates in the table were chosen from where each replacement runs and the constraints covered so far. When in doubt, asking the following questions in order narrows it down.

Order for choosing a replacementShows choosing a web add-in if a check on the user's screen is needed before sending, mail flow rules if the same rule applies to everyone's mail in the organization, Power Automate if processing is triggered by receipt or time and the provided actions are enough, and otherwise a program that calls Microsoft Graph, and deciding how long to keep on classic Outlook any processing that none of these can replace.YesNoYesNoYesNoConfirm on screen before sending?Web add-inSame rule for everyone's mail?Mail flow rulesAre the provided actions enough?Power AutomateA program that calls GraphDecide how long to keep what cannot be replaced

Figure 10: Asking about the user’s screen, the whole organization, and the provided actions in that order narrows down the replacement.

How to proceed with migration

As preparation for migration, Microsoft lists talking with users and teams that have special requirements, deciding the scope for checking how the new Outlook affects existing workflows, and drawing up a readiness plan2. For Outlook automation, proceed in the following order.

  1. For each piece of automation you identified, decide on the replacement and the person responsible.
  2. Build the replacement and try it with some users. During this time, users can run classic Outlook and the new Outlook side by side2.
  3. Once you have confirmed that the replacement works, remove the settings that hold off migration for that department.
  4. For processing that cannot be replaced, decide which departments keep it on classic Outlook and for how long, and review it within the support period of at least until 2029.
How to migrate Outlook automationShows deciding on the replacement and person responsible for each piece of automation identified, building the replacement and trying it with some users, removing the settings that hold off migration once it has been confirmed to work, and deciding which departments keep processing that cannot be replaced on classic Outlook and for how long.Decide the replacement and ownerBuild the replacementTry it with some users (run both Outlooks side by side)Remove the settings that hold off migrationDecide how long to keep irreplaceable processing on classic Outlook

Figure 11: Build and try the replacements, then proceed with that department’s migration.

The people who built automation with COM add-ins or VBA may no longer be at the company. For anything whose contents are unknown, first check what it does on classic Outlook, record it with the steps in Figure 4, and then choose a replacement. How to tell processing that suits VBA from processing that does not is covered in “What is VBA? Limits, future, when to replace it, and realistic migration patterns,” and COM itself is explained in “What are COM, ActiveX and OCX?.”

References

  1. Microsoft Support, Feature comparison between new Outlook and classic Outlook. COM add-ins, VBA macros, the OOM, MAPI and import/export of rules are “Not supported” in the new Outlook; rules, Quick Steps, .pst and offline use are “Partially available” (updated September 23, 2026). ↩ ↩2 ↩3

  2. Microsoft Learn, Stages of migration to new Outlook for Windows. The three stages of opt-in, opt-out and cutover, notice at least 12 months in advance, support for existing classic Outlook until at least 2029, and migration readiness (updated February 23, 2026). ↩ ↩2 ↩3 ↩4 ↩5

  3. Microsoft Learn, Develop Outlook add-ins for the new Outlook on Windows. The new Outlook does not support VSTO and COM add-ins; migration to web add-ins; how VSTO and COM add-ins are handled in classic Outlook; the table of scenarios supported by web add-ins; supported accounts; how add-ins behave offline. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7

  4. Microsoft Learn, Identify COM add-ins in your organization. Inventory in the Microsoft 365 Apps admin center, registry keys for COM add-ins, Microsoft’s own COM add-ins and their alternatives, and an explanation of Microsoft VBA for Outlook Addin. ↩ ↩2 ↩3 ↩4

  5. Microsoft Learn, Outlook object model for Visual Basic for Applications (VBA). Reference for the objects, properties, methods and events of the Outlook object model. ↩

  6. Microsoft Learn, Automating Outlook from a Visual Basic Application. How to start and drive Outlook from another application with CreateObject or New. ↩

  7. Microsoft 365 Message Center, MC949965 - Toggle to new Outlook (public copy by mc.merill.net). The start of opt-out in Enterprise environments moved to March 2027, users not subject to the migration, and the ability to return to classic Outlook (updated February 20, 2026). ↩

  8. Microsoft Learn, Control installing and using new Outlook. The cloud policy that hides the toggle, the policy that stops automatic migration and NewOutlookMigrationUserSetting, and how to block use in the new Outlook with a mailbox policy. ↩

  9. Microsoft Learn, Registry entries for VSTO Add-ins. Registration locations for the current user and for all users (HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE), registration only under HKEY_CURRENT_USER for ClickOnce deployment, and registration under WOW6432Node on 64-bit Windows. ↩

  10. Microsoft Learn, Activate add-ins with events. How event-based activation works, supported events, the need for administrator deployment, and the internet connection requirement and the timeout of about 300 seconds. ↩ ↩2 ↩3

  11. Microsoft Learn, Handle OnMessageSend and OnAppointmentSend events in your Outlook add-in with Smart Alerts. Smart Alerts and requirement set 1.12, behavior by send mode, handling long-running processing, the OnSendAddinsEnabled policy, and restrictions on distributing block add-ins. ↩ ↩2 ↩3 ↩4 ↩5 ↩6

  12. Microsoft Learn, Office 365 Outlook connector. The trigger When a new email arrives (V3) and the action Send an email (V2), when to use Include Attachments versus Get Attachment (V2), the required mailbox, and the maximum size of message content. ↩ ↩2

  13. Microsoft Learn, Outlook mail API overview. The Microsoft Graph mail API works with data in users’ mailboxes and shared mailboxes in Exchange Online. ↩

  14. Microsoft Learn, user: sendMail. The sendMail request, the required permission Mail.Send, the 202 Accepted response, and saving to Sent Items. ↩

  15. Microsoft Learn, List attachments. Retrieving the list of a message’s attachments, and the required permission Mail.Read. ↩

  16. Microsoft Learn, Mail flow rules (transport rules) in Exchange Online. How conditions and actions are applied to mail in transit, examples of conditions and actions, where they are configured, and how long changes take to apply. ↩ ↩2

Recent articles sharing the same tags. Deepen your understanding with closely related topics.

These are topic pages close to this theme. Starting from the article, you can go on to related services and other articles.

This article leads to the following service pages. Start from the entry point closest to your situation.

Technical Consulting & Design Review

As technical consulting, we can work with you to identify which automation will stop in the new Outlook and decide whether to replace each piece with a web add-in, Power Automate, Microsoft Graph or mail flow rules.

Frequently Asked Questions

Questions commonly asked at the time of consultation about the topic of this article.

Do VBA macros run in the new Outlook?
No. In Microsoft's feature comparison table, VBA macros in the new Outlook are listed as "Not supported." COM add-ins and the Outlook object model (OOM) cannot be used either. They keep working in classic Outlook, so you can continue to use classic Outlook until the replacements are in place.
How long can classic Outlook be used?
According to Microsoft's documentation, existing installations of classic Outlook from perpetual licenses and subscriptions are supported until at least 2029. The switch proceeds in three stages, opt-in, opt-out and cutover, and administrators are to be notified at least 12 months before opt-out and before cutover.
Are tools that send mail by driving Outlook from Excel VBA also affected?
Yes. A tool that drives Outlook from Excel VBA with CreateObject("Outlook.Application") uses the Outlook object model (OOM). The new Outlook has no OOM, so on PCs without classic Outlook, mail cannot be sent this way. Replace it with sending from a Power Automate cloud flow or with Microsoft Graph sendMail.
What should replace an add-in that checks recipients and attachments before sending?
The first candidate is Smart Alerts (the OnMessageSend event) in an Outlook web add-in. It runs a check after the Send button is pressed, and if the conditions are not met it can stop the send and display the reason. However, event-activated add-ins run only when deployed by an administrator, and they need an internet connection.

Author Profile

Profile page for the article author.

Go Komura

Representative of KomuraSoft LLC

Focused on Windows software development, technical consulting, and bug investigation, with particular strength in projects where existing assets remain and in investigating failures whose cause is hard to see.

Back to the Blog