Set preferences for macro security in Office for Mac
Applies to: Office for Mac, Office LTSC for Mac 2021, Office 2019 for Mac
As an IT admin, you may want to provide Mac users in your organization with a standard set of preferences for Office in either of the following ways:
- Set a default setting, which users can change.
- Force a particular setting, which users can't change.
The following preferences can be used to improve security posture and help protect company data.
These keys are CFPreferences-compatible, which means that they can be set by using enterprise management software for Mac, such as Jamf Pro.
Visual Basic macro notifications
Controls whether macros are allowed to run, and what the user experience is when opening a file that contains a macro.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
VisualBasicMacroExecutionState |
Data Type |
String |
Possible values |
DisabledWithWarnings (default) DisabledWithoutWarnings EnabledWithoutWarnings (not recommended) |
Apps |
Word, Excel, PowerPoint |
Availability |
15.33 |
Comments |
The user interface will be disabled if this preference is set via a Configuration Profile. |
VBA object model
Set the ability for macros to modify Visual Basic projects.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
VBAObjectModelIsTrusted |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
16.21 |
Comments |
To improve security, forcibly set this value to false via a Configuration Profile. |
Visual Basic system bindings
Set the ability for Visual Basic macros to use DECLARE via the system() API.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
AllowVisualBasicToBindToSystem |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
15.31 |
Comments |
To improve security, forcibly set this value to false via a Configuration Profile. |
Visual Basic external library bindings
Set the ability for Visual Basic macros to utilize third-party dynamic libraries.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
DisableVisualBasicExternalDylibs |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
15.31 |
Comments |
Unless third-party extensions are being used, set this value to true via a Configuration Profile to improve security. |
Visual Basic pipe bindings
Set the ability for Visual Basic macros to communicate with other processes through pipes.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
DisableVisualBasicToBindToPopen |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
16.16 |
Comments |
Unless third-party extensions are being used, set this value to true via a Configuration Profile to improve security. |
Visual Basic and AppleScript
Set the ability for Visual Basic macros to invoke AppleScript.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
DisableVisualBasicMacScript |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
16.16 |
Comments |
To improve security, set this value to false via a Configuration Profile. |
Disable Visual Basic
Prevent all Visual Basic code from running - even from trusted locations like the default template.
Category | Details |
---|---|
Domain |
com.microsoft.office |
Key |
VisualBasicEntirelyDisabled |
Data Type |
Boolean |
Possible values |
false (default) true |
Apps |
Word, Excel, PowerPoint |
Availability |
16.32 |
Comments |
Unless third-party extensions are being used, set this value to true via a Configuration Profile to improve security. |
Related articles
Feedback
Submit and view feedback for