Pourquoi ActiveX ne fonctionne plus dans Office 2024/Microsoft 365 : causes et méthode de diagnostic

· Mis à jour le: · · ActiveX, COM, Office, Microsoft 365, 32bit, 64bit, Windows, Réutilisation de l'existant

Ce qu’il faut savoir avant tout

Dans Office 2024 et Microsoft 365, les contrôles ActiveX sont désactivés par défaut. Si des boutons ou des formulaires Excel qui fonctionnaient auparavant, ou des objets intégrés dans Word / PowerPoint, semblent soudain « ne plus fonctionner » après une mise à jour, la cause est le plus souvent non pas une panne du programme, mais un changement de valeur de sécurité par défaut.

Les causes se répartissent en trois grandes catégories.

  1. Changement des paramètres de sécurité (Trust Center, ActiveX désactivé par défaut)
  2. Incompatibilité 32 bits / 64 bits (un contrôle réservé au 32 bits chargé dans un Office 64 bits)
  3. Défaut d’enregistrement COM ou DLL / runtimes dépendants manquants (regsvr32 jamais exécuté, runtime VC++ absent)

Règle de terrain : traiter ces causes dans cet ordre, du haut vers le bas, est le chemin le plus rapide.

Office 2024 et Microsoft 365 — Quelles sont les différences

Aspect Famille Office 2024 (licence perpétuelle) Microsoft 365 Apps (abonnement)
Modèle de mise à jour Mises à jour de sécurité / qualité uniquement. Aucune nouvelle fonctionnalité ajoutée Mises à jour de fonctionnalités continues, par canal
Valeur par défaut d’ActiveX Désactivé par défaut Désactivé par défaut (identique)
Chemin de Registre / stratégie Toujours 16.0 Toujours 16.0
OS pris en charge (en 2026) Windows 11, Server 2025 / 2022, Win10 LTSC Windows 11, Server 2025 / 2022 sont l’exigence officielle. Une période de grâce pour la migration existe sous Win10 jusqu’en octobre 2028
Méthode d’installation Click-to-Run (pas de MSI) Click-to-Run

Important : le chemin de Registre reste 16.0 même dans Office 2024. Chercher 24.0 « parce qu’on est en 2024 » est un détour classique.

Remarque sur Windows 10

Le support général de Windows 10 s’est terminé le 14 octobre 2025. Toutefois, Microsoft 365 Apps reste dans une période de grâce de migration sous Windows 10, avec des mises à jour de sécurité fournies jusqu’au 10 octobre 2028. Autrement dit, la situation est la suivante :

  • Ce n’est pas le cas que « rien ne fonctionne du tout sous Windows 10 »
  • Vous opérez sous la double prémisse « OS hors support, Apps en période de grâce »

Vue d’ensemble du dépannage

NonOuiOuiNonOuiNonNonOuiNonOuiReproduire le symptômeRecueillir le nom du produit Office, le build, la bitness et les infos OSLes prérequis de support OS / Office sont-ils OK ?Corriger les prérequis : revoir OS / édition Office / canalVérifier le Trust CenterProblème avec les paramètres ActiveX / Protected View / documents approuvés ?Corriger les paramètres, la signature et la conception de distributionDépend du Web hérité / d'IE ?Vérifier le mode IE et la liste de sitesVérifier CLSID / InprocServer32 / TypeLibL'enregistrement COM est-il sain ?regsvr32 / RegAsm / réinstallationVérifier les DLL dépendantes / .NET / runtimes VC++Les dépendances sont-elles satisfaites ?Réparer et redistribuer le runtime concernéCollecter les journaux / Procmon / Process ExplorerVérifier les écarts de build et les écarts de mise à jour de sécurité

Étape 1 — Recueillir les informations sur l’environnement

Commencez toujours par consigner les informations suivantes. L’objectif est de décider sur la base de chiffres, pas d’impressions.

Côté Office

  • Vérifiez sous [Fichier] → [Compte] → [Informations sur le produit]
    • Nom du produit (Office 2024 ou Microsoft 365)
    • Version et numéro de build (le plus important)
    • Type d’installation (Click-to-Run)
  • Vérifiez 32 bits / 64 bits dans la boîte de dialogue d’informations produit, par exemple [À propos d’Excel] / [À propos de Word]

Côté Windows

# Informations de base sur l'OS
Get-CimInstance Win32_OperatingSystem |
  Select-Object Caption, Version, BuildNumber, OSArchitecture

# Chemins des exécutables des processus Office
Get-Process WINWORD, EXCEL, POWERPNT, VISIO -ErrorAction SilentlyContinue |
  Select-Object ProcessName, Path

Pièges courants

Erreur Approche correcte
Se contenter de « c’est la dernière version » Vérifier le numéro de build. Les écarts entre canaux sont importants sur Microsoft 365
Charger un composant COM / ActiveX réservé au 32 bits dans un Office 64 bits La bitness d’Office et celle du COM doivent obligatoirement correspondre
Supposer que ça ne peut pas marcher parce que c’est Windows 10 Cela peut encore fonctionner pendant la période de grâce, mais le socle est instable

Étape 2 — Vérifier le Trust Center et les paramètres de sécurité

Ce qu’on cherche ici, c’est à distinguer « le fichier lui-même est-il bloqué » de « le chargement du composant COM échoue-t-il ».

Liste de contrôle (dans l’ordre, du haut vers le bas)

# Élément Où vérifier Cause fréquente
1 Barre de message ActiveX La barre jaune affichée à l’ouverture du fichier Désactivé par défaut. Essayer [Activer le contenu] pour voir si cela fonctionne temporairement
2 Trust Center > Paramètres ActiveX [Fichier] > [Options] > [Centre de gestion de la confidentialité] Est-ce réglé sur « Désactiver tous les contrôles sans notification » ?
3 Protected View Trust Center > Vue protégée Les fichiers ouverts depuis un partage réseau ou une pièce jointe sont bloqués
4 Documents approuvés Trust Center > Documents approuvés Une fois approuvé, l’avertissement ne réapparaît plus, ce qui rend la reproduction dépendante du poste
5 Éditeurs approuvés Trust Center > Éditeurs approuvés Même signé, ce n’est pas autorisé si le certificat n’a pas été distribué
6 Paramètres des macros Trust Center > Paramètres des macros Les macros et ActiveX sont des paramètres distincts, mais peuvent s’influencer mutuellement

Ce qu’il faut essayer en premier

  1. Copiez le fichier concerné dans un dossier local géré (par exemple C:\Temp) et enregistrez-le sous un autre nom
  2. Évitez de l’ouvrir directement depuis un partage réseau ou une pièce jointe (pour écarter l’effet de Protected View)
  3. Démarrez Office en mode sans échec pour isoler l’influence des compléments
excel /safe
winword /safe
powerpnt /safe

Étape 3 — Vérifier une éventuelle dépendance au mode IE

Ce qui ressemble à une « panne ActiveX ordinaire » peut en réalité être causé par un mode IE d’Edge non configuré.

  • Le mode IE n’est pas un commutateur global du navigateur : il s’applique uniquement aux sites enregistrés dans l’Enterprise Site List
  • Si seule une partie de votre intégration Web interne échoue, vérifiez si ce site est bien couvert par le mode IE

Vérifiez les éléments suivants :

  • Stratégies Edge : Modèles d’administration > Microsoft Edge
  • Registre : HKLM\SOFTWARE\Policies\Microsoft\Edge
  • Page de diagnostic : edge://compat/iediagnostic

Étape 4 — Vérifier l’enregistrement COM

Si le Trust Center ne pose pas de problème, l’étape suivante consiste à vérifier que le composant COM lui-même est correctement enregistré.

Commandes de vérification de base

:: Vérifier l'état d'enregistrement du CLSID
reg query "HKLM\SOFTWARE\Classes\CLSID\{YOUR-CLSID-HERE}\InprocServer32" /s

:: Enregistrer / désenregistrer une DLL COM / ActiveX native
regsvr32 C:\Path\YourControl.dll
regsvr32 /u C:\Path\YourControl.dll

Pour les composants COM développés en .NET (important)

regsvr32 ne peut pas être utilisé pour les assemblies .NET. Utilisez RegAsm.

:: Office 32 bits sur Windows 64 bits -> utiliser le RegAsm de Framework
"C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe" "C:\Path\YourControl.dll" /codebase /tlb

:: Office 64 bits -> utiliser le RegAsm de Framework64
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe" "C:\Path\YourControl.dll" /codebase /tlb

Incident classique : « la bitness de RegAsm ne correspond pas à celle d’Office » → l’enregistrement paraît réussi dans le Registre, mais Office ne trouve pas le composant.

Étape 5 — Vérifier les DLL / runtimes dépendants

Quand « la DLL principale existe mais ne se charge pas », il s’agit le plus souvent d’une dépendance manquante.

Runtimes fréquemment manquants en pratique

Élément souvent manquant Comment vérifier
Packages redistribuables Visual C++ (2013, 2015-2022) Vérifier la liste dans Panneau de configuration > Programmes et fonctionnalités
.NET Framework 4.8.1 reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full"
DLL dépendantes (spécifiques au fournisseur) Vérifier avec Process Explorer / Procmon

Outils d’investigation bas niveau

Outil Usage
Process Explorer Consulter la liste des DLL chargées dans un processus
Procmon Suivre en temps réel les événements NAME NOT FOUND / PATH NOT FOUND / ACCESS DENIED

En capturant un journal Procmon pendant la reproduction et en filtrant sur NAME NOT FOUND, on voit immédiatement quelle DLL ou quelle clé de Registre est introuvable.

Étape 6 — Capturer les journaux pour la confirmation finale

Si la cause n’a toujours pas été identifiée à ce stade, activez la journalisation pour capturer le moment de la reproduction.

Activer la journalisation générale d’Office

reg add HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /t REG_DWORD /d 1

Activer la journalisation détaillée de Click-to-Run

reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /t REG_DWORD /d 3
reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /t REG_DWORD /d 1

Les journaux sont écrits dans %windir%\temp ou %temp%.

Utiliser également l’Observateur d’événements

eventvwr.msc
  • Vérifiez Journaux Windows > Application
  • Les erreurs .NET Runtime ou SideBySide sont souvent l’indice décisif

Désactiver la journalisation après la vérification (à ne pas oublier)

reg delete HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /f

Aide-mémoire des principales clés de Registre / stratégies

Quatre chemins à retenir

Usage Chemin
Racine des stratégies Office HKLM\SOFTWARE\Policies\Microsoft\Office\16.0
Vérification de la désactivation globale d’ActiveX HKCU\Software\Microsoft\Office\Common\Security\DisableAllActiveX (1 = désactivé, 0 = levé)
Enregistrement du composant COM HKLM\SOFTWARE\Classes\CLSID\{CLSID}\InprocServer32
Kill bit COM d’Office HKLM\Software\Microsoft\Office\16.0\Common\COM Compatibility\{CLSID}

Avec un Office 32 bits sur Windows 64 bits, pensez aussi à vérifier ce qui concerne COM sous Wow6432Node.

Entrées de Registre de test fréquemment utilisées (vérification uniquement)

Windows Registry Editor Version 5.00

; Test uniquement : lever la désactivation globale d'ActiveX
[HKEY_CURRENT_USER\Software\Microsoft\Office\Common\Security]
"DisableAllActiveX"=dword:00000000

Avertissement : ces réglages sont réservés à la vérification. La solution permanente doit reposer sur « un canal de distribution fiable et la signature ».

Symptômes fréquents et remèdes

Symptôme Cause la plus probable Première chose à essayer
Bouton inactif après une mise à jour ActiveX désactivé par défaut Barre de message → [Activer le contenu] → vérifier le Trust Center
Échoue uniquement sur Office 64 bits COM / ActiveX réservé au 32 bits Demander au fournisseur s’il existe une version x64 ; sinon, basculer vers Office 32 bits
Ne fonctionne que sur un PC en particulier COM non enregistré / enregistrement corrompu Vérifier le CLSID avec reg query → réenregistrer avec regsvr32
La DLL existe mais ne se charge pas DLL dépendante / runtime VC++ manquant Suivre NAME NOT FOUND avec Procmon
Échoue depuis un partage réseau ou une pièce jointe Protected View / MOTW Copier dans un dossier local et comparer la reproduction
Seule une partie de l’intégration Web interne échoue Mode IE non configuré Ajouter le site concerné à l’Enterprise Site List
Signé mais toujours refusé Certificat non distribué / éditeur approuvé non enregistré Vérifier la validité de la signature de code et la distribution du certificat
Le comportement change en réutilisant des procédures de déploiement de l’ère MSI Migration vers un modèle Click-to-Run Revoir les anciens scripts et les conceptions qui présupposent un auto-enregistrement

Configuration recommandée pour les entreprises

Le principe de base d’une solution permanente est de « ne pas abaisser la sécurité globale » mais « autoriser de manière limitée uniquement ce qui est nécessaire ».

Élément Recommandation
Canal de mise à jour (Microsoft 365) Pour les postes fortement dépendants d’ActiveX hérité, utiliser le canal Entreprise mensuel (les changements sont plus faciles à suivre)
Bitness d’Office Tant que le fournisseur n’a pas explicitement confirmé la prise en charge x64, privilégier Office 32 bits
Emplacements approuvés (Trusted Locations) Les emplacements approuvés sur le réseau sont interdits en principe. En cas de besoin, passer par une procédure de demande d’exception
Signature Signer avec un certificat de code les ActiveX / macros / compléments distribués en interne, et gérer les éditeurs approuvés de façon centralisée
Mode IE N’enregistrer que les URL nécessaires dans l’Enterprise Site List (éviter de rendre l’ensemble du parc hérité)
Validation avant déploiement Avant le déploiement en production, constituer un pilot ring et valider une build figée sur des documents / postes représentatifs

Exemple de configuration de déploiement Microsoft 365 (32 bits + Entreprise mensuel)

<Configuration>
  <Add OfficeClientEdition="32" Channel="MonthlyEnterprise">
    <Product ID="O365ProPlusRetail">
      <Language ID="ja-jp" />
    </Product>
  </Add>
  <Updates Enabled="TRUE" />
  <Display Level="None" AcceptEULA="TRUE" />
</Configuration>

Dernier recours — La réparation

  • La réparation rapide / réparation en ligne est efficace contre la corruption des paramètres ou de l’enregistrement
  • Elle ne résout en revanche pas les incompatibilités x86 / x64 ni les problèmes de signature / stratégie eux-mêmes
  • La réparation vient en dernier (la faire en premier pollue les journaux d’investigation)

Aide-mémoire des commandes

Objectif Commande
Démarrage en mode sans échec excel /safe / winword /safe
Enregistrer une DLL COM regsvr32 xxx.dll
Désenregistrer une DLL COM regsvr32 /u xxx.dll
Enregistrer un composant COM .NET (Office 32 bits) Framework\v4.0.30319\RegAsm.exe xxx.dll /codebase /tlb
Enregistrer un composant COM .NET (Office 64 bits) Framework64\v4.0.30319\RegAsm.exe xxx.dll /codebase /tlb
Sauvegarder le Registre reg export HKCU\... backup.reg /y
Activer la journalisation générale d’Office reg add HKCU\Software\...\Logging /v EnableLogging /t REG_DWORD /d 1
Activer la journalisation détaillée de Click-to-Run reg add HKLM\SOFTWARE\...\OverRide /v LogLevel /t REG_DWORD /d 3
Lancer l’Observateur d’événements eventvwr.msc

Conclusion — Ne pas se tromper dans l’ordre de résolution

Erreur de configuration -> Incompatibilité OS / bitness -> Problème du composant COM -> Dépendances -> Écarts de mise à jour

Même quand un problème ActiveX semble n’être « qu’un problème Excel », il s’agit en réalité d’un problème où cinq couches se croisent : la sécurité par défaut d’Office + les prérequis de support Windows + l’enregistrement du composant COM + les runtimes dépendants + le modèle de mise à jour. Plutôt que d’assouplir les paramètres à l’aveugle, isoler la cause du haut vers le bas permet d’aboutir à une correction bien moins susceptible de se reproduire.

Liens de référence

Articles récents partageant les mêmes étiquettes, pour approfondir des sujets proches.

Ces pages replacent le sujet dans un contexte plus large de services et de décisions.

Cet article est directement lié aux services suivants.

Analyse des bugs et des causes

Les incidents Office × COM du type « un bouton qui fonctionnait auparavant devient soudain inactif » sont précisément le genre de problème que l'isolement de cause avec Process Explorer / Procmon / les journaux Click-to-Run permet de résoudre.

Questions fréquentes

Questions souvent posées lors d’une consultation sur le sujet de cet article.

Que signifie la désactivation par défaut d'ActiveX dans Office 2024 et Microsoft 365 ?
Dans Office 2024 et Microsoft 365, les contrôles ActiveX sont désactivés par défaut. Si des boutons ou des formulaires Excel, ou des objets intégrés dans Word / PowerPoint, qui fonctionnaient auparavant semblent soudain « ne plus fonctionner » après une mise à jour, la cause n'est généralement pas une panne du programme mais ce changement de valeur de sécurité par défaut. La première étape consiste à sélectionner [Activer le contenu] dans la barre de message jaune qui apparaît à l'ouverture du fichier pour voir si cela fonctionne temporairement, puis à vérifier les paramètres ActiveX du Trust Center (Centre de gestion de la confidentialité).
Après une mise à jour d'Office, les boutons ActiveX d'Excel sont devenus inactifs. Par quoi commencer la vérification ?
Les causes se répartissent en trois grandes catégories. La première est un changement des paramètres de sécurité (Trust Center, ActiveX désactivé par défaut, Protected View). La deuxième est une incompatibilité 32 bits / 64 bits (un contrôle réservé au 32 bits chargé dans un Office 64 bits). La troisième est un défaut d'enregistrement COM ou l'absence de DLL / runtimes dépendants (regsvr32 jamais exécuté, runtime VC++ manquant). Traiter ces causes dans cet ordre, du haut vers le bas, est le chemin le plus rapide. Parallèlement, notez d'abord le nom du produit, le numéro de build, la bitness d'Office et les informations sur l'OS, puis vérifiez si le comportement diffère lorsque le fichier est ouvert depuis un dossier local plutôt que directement depuis un partage réseau ou une pièce jointe.
Pourquoi un contrôle ActiveX échoue-t-il uniquement sur Office 64 bits ?
Parce que la bitness d'Office et celle du composant COM / ActiveX doivent obligatoirement correspondre. Un contrôle réservé au 32 bits ne fonctionnera pas dans un Office 64 bits. Demandez au fournisseur s'il existe une version x64 et, sinon, envisagez de basculer vers Office 32 bits. Pour un composant COM développé en .NET, n'utilisez pas regsvr32 mais RegAsm : celui de Framework pour Office 32 bits, celui de Framework64 pour Office 64 bits. Si la bitness de RegAsm ne correspond pas à celle d'Office, on obtient l'incident classique où l'enregistrement paraît réussi dans le Registre, mais Office ne trouve pas le composant.
Comment configurer ActiveX pour qu'il fonctionne de manière permanente ?
Le principe de base n'est pas d'abaisser la sécurité globale, mais d'autoriser de manière limitée uniquement ce qui est nécessaire. La modification du registre DisableAllActiveX reste réservée à la vérification ; la solution permanente repose sur un canal de distribution fiable et la signature. Concrètement : signez avec un certificat de code les ActiveX / macros / compléments distribués en interne et gérez les éditeurs approuvés (Trusted Publisher) de façon centralisée ; pour Microsoft 365, envisagez le canal Entreprise mensuel (Monthly Enterprise), où les changements sont plus faciles à suivre ; et, tant que le fournisseur n'a pas explicitement confirmé la prise en charge x64, privilégiez Office 32 bits. Avant tout déploiement en production, constituez un pilot ring et validez une build figée sur des documents et des postes représentatifs.

Profil de l’auteur

Page de présentation de l’auteur de l’article.

Go Komura

Représentant de KomuraSoft LLC

Spécialisé dans le développement de logiciels Windows, le conseil technique et l’analyse de pannes, notamment pour les systèmes existants et les incidents difficiles à reproduire.

Retour au blog