Étendue d’analyse des macros au moment de l’exécution
Vérifié avec Microsoft 365/Office 5568.1000 — mis à jour le 4 septembre 2026
Pris en charge sur : Au moins Windows Server 2016, Windows 10
Chemin dans la console GPO
Configuration utilisateur\Modèles d'administration\Microsoft Office 2016\Paramètres de sécurité Description
Ce paramètre de stratégie spécifie le comportement pour les fonctionnalités d’analyse du runtime VBA et Excel 4,0 (XLM). Plusieurs applications Office prennent en charge les macros VBA, mais les macros XLM sont prises en charge uniquement par Excel. Les macros ne peuvent être analysées que si le logiciel anti-virus s’enregistre en tant que fournisseur AMSI (anti-malware scan interface) sur l’appareil. Si vous activez ce paramètre de stratégie, vous pouvez choisir parmi les options suivantes pour déterminer le comportement d’analyse de l’exécution des macros : – Désactiver pour tous les fichiers (non recommandé) : Si vous choisissez cette option, aucune analyse à l’exécution des macros activées ne sera effectuée. – Activer pour les fichiers à faible niveau de confiance : Si vous choisissez cette option, l’analyse de l’exécution sera activée pour tous les fichiers pour lesquels les macros sont activées, à l’exception des fichiers suivants : – Fichiers ouverts lorsque les paramètres de sécurité macro sont définis sur « Activer toutes les macros » – Fichiers ouverts à partir d’un emplacement approuvé – Fichiers qui sont des documents approuvés – Fichiers qui contiennent du code VBA signé numériquement par un éditeur approuvé – Activer pour tous les fichiers : Si vous choisissez cette option, les fichiers à faible niveau de confiance ne seront pas exclus de l’analyse de l’exécution. Les runtimes VBA et XLM signalent à un système antivirus certains comportements à haut risque dans le code que la macro est sur le point d’exécuter. Cela permet au système antivirus d’indiquer si le comportement de la macro est malveillant ou non. Si le comportement est déterminé comme étant malveillant, l’application Office ferme la session et le système antivirus peut mettre le fichier en quarantaine. Si le comportement n’est pas nuisible, l’exécution de la macro se poursuit. Remarque : lorsque l’analyse de l’exécution des macros est activée, les performances d’exécution des projets VBA et des feuilles XLM affectés risquent d’être réduites. Si vous désactivez ce paramètre de stratégie, aucune analyse à l’exécution des macros activées ne sera effectuée. Si vous ne configurez pas ce paramètre de stratégie, l’option « Activer pour les fichiers à faible niveau de confiance » sera définie comme paramètre par défaut. Remarque : ce paramètre de stratégie s’applique uniquement aux versions d’Office sous abonnement, telles que Microsoft 365 apps pour Enterprise.
Registre
software\policies\microsoft\office\16.0\common\security Générateur d'exports
BETAConfigurez l'état, la portée et les options, puis générez les sorties .reg, PowerShell, Intune et SCCM — ou ajoutez le paramètre à une collection multi-paramètres.
Ces exports écrivent le registre — ce n'est pas une GPO managée. ⓘ
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Étendue d’analyse des macros au moment de l’exécution
; State: Enabled
; Supported on: Au moins Windows Server 2016, Windows 10
[HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\common\security]
"macroruntimescanscope"=dword:00000000 Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\common\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'macroruntimescanscope' -Value 0 -Type DWord Intune XML
Aucune correspondance directe Policy CSP / OMA-URI pour cette stratégie. Utilisez l'onglet Intune Remediation, ou importez l'ADMX dans Intune. Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\software\policies\microsoft\office\16.0\common\security' -Name 'macroruntimescanscope' -Expected 0 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\common\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'macroruntimescanscope' -Value 0 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# SCCM Configuration Item guidance:
# Create a Configuration Item of type "Setting: Script".
# Discovery script: use the Detection script below.
# Remediation script: use the Remediation script below.
# Compliance rule: the Discovery script output equals 'Compliant'.
# === Detection script ===
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKCU:\software\policies\microsoft\office\16.0\common\security' -Name 'macroruntimescanscope' -Expected 0 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Étendue d’analyse des macros au moment de l’exécution
# State: Enabled
# Supported on: Au moins Windows Server 2016, Windows 10
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\software\policies\microsoft\office\16.0\common\security'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'macroruntimescanscope' -Value 0 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).