Enregistrer la macro dans le classeur de macros personnelles par défaut
Vérifié avec Microsoft 365/Office 5568.1000 — mis à jour le 4 septembre 2026
Pris en charge sur : Au minimum Windows Server 2008 R2 ou Windows 7
Chemin dans la console GPO
Configuration utilisateur\Modèles d'administration\Microsoft Excel 2016\Options Excel\Sécurité\Centre de gestion de la confidentialité Description
Ce paramètre de stratégie contrôle l’emplacement d’enregistrement par défaut des macros dans Excel. Si ce paramètre de stratégie est activé, Excel enregistre les macros dans le classeur de macros personnelles des utilisateurs. Si vous désactivez ou ne configurez pas ce paramètre de stratégie, Excel enregistre les macros dans le classeur actif dans lequel elles sont créées. Remarque : dans l’interface utilisateur (IU), la liste déroulante Enregistrer la macro dans de la boîte de dialogue Enregistrer une macro (Macros | Enregistrer une macro) permet aux utilisateurs d’enregistrer la nouvelle macro dans le classeur actuel, un nouveau classeur ou un classeur de macros personnelles (Personal.xlsb), un classeur masqué ouvert à chaque démarrage d’Excel. Par défaut, Excel affiche la boîte de dialogue Enregistrer la macro dans avec la valeur Ce classeur déjà sélectionnée dans la liste déroulante. Si un utilisateur enregistre une macro dans le classeur actif, puis transmet celui-ci à d’autres utilisateurs, la macro est transmise avec le classeur. Si vous activez ce paramètre de stratégie, Excel affiche la boîte de dialogue Enregistrer la macro dans, avec la valeur Classeur de macros personnelles déjà sélectionnée. Les utilisateurs peuvent toujours sélectionner l’une des deux autres options dans le menu déroulant.
Registre
software\policies\microsoft\office\16.0\excel\options\binaryoptions Nom de valeur : fglobalsheet_37_1
Activé : fglobalsheet_37_1 = 1
Désactivé : fglobalsheet_37_1 = 0
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: Enregistrer la macro dans le classeur de macros personnelles par défaut
; State: Enabled
; Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
[HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\excel\options\binaryoptions]
"fglobalsheet_37_1"=dword:00000001 Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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\excel\options\binaryoptions'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'fglobalsheet_37_1' -Value 1 -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: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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\excel\options\binaryoptions' -Name 'fglobalsheet_37_1' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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\excel\options\binaryoptions'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'fglobalsheet_37_1' -Value 1 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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\excel\options\binaryoptions' -Name 'fglobalsheet_37_1' -Expected 1 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Enregistrer la macro dans le classeur de macros personnelles par défaut
# State: Enabled
# Supported on: Au minimum Windows Server 2008 R2 ou Windows 7
# 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\excel\options\binaryoptions'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'fglobalsheet_37_1' -Value 1 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).