Excel Target Requirements and Limitations for MATLAB Compiler
Compiler Prerequisites
To generate Microsoft® Excel® add-ins using MATLAB®, you must have the following installed on a Windows® system:
MATLAB
MATLAB Compiler™
Microsoft Excel, to generate the Visual Basic® code
For instructions on deploying Microsoft Excel add-ins, see Distribute Add-Ins and Integrate into Microsoft Excel.
Macro Execution Security Levels in Microsoft Excel
To generate add-ins and create macros with MATLAB Compiler, you must adjust the security settings accordingly in Microsoft Excel. Failure to do so may result in VBA code not being generated or warning messages sent to MATLAB Compiler.
For Microsoft Excel 2010 or newer:
Click File > Options > Trust Center > Trust Center Settings > Macro Settings.
In Developer Macro Settings, select Trust access to the VBA project object model.
MATLAB Compiler Excel Add-In Limitations
MATLAB Compiler supports the following function outputs for Excel add-ins:
No outputs
Figure (graphical) output
Scalar output
Multidimensional matrix output
Structure array output
It does not support MATLAB objects as inputs or outputs for compiled or deployed functions with Excel add-ins.
Dependencies on MATLAB objects or functions that are not compatible with MATLAB Compiler can prevent your code from compiling. For a list of functions that cannot be compiled, see Functions Not Supported for Compilation by MATLAB Compiler and MATLAB Compiler SDK. For detailed information about how MATLAB Compiler evaluates MATLAB code dependencies during compilation, see Dependency Analysis Using MATLAB Compiler. For information on ensuring your code is deployable, see Write Deployable MATLAB Code.
Work with Struct Arrays
To deploy a MATLAB function with structure arrays as input arguments, build Microsoft Excel macros and pass them (with the Excel add-in) to the end users. For more details on using struct array arguments in the Function Wizard, see Define Input Arguments.
If you do not create a macro, let your end users know which arguments correspond to the struct arrays and the field names of the struct arrays.
Deployment Target Architectures and Compatibility
Applications developed on one architecture must be compatible with the architecture on the system where they are deployed. For example, if you have a 64-bit system, you usually install a 64-bit version of MATLAB (and most other applications) by default.
Add-ins created with MATLAB Compiler are compatible with both 32–bit and 64–bit versions of Microsoft Excel. MATLAB Compiler itself is in 64–bit only.