extract_vba man page

extract_vba — A utility to extract a VBA project from an Excel 2007+ xlsm file.


This utility is used to extract the VBA project binary from an Excel 2007+ xlsm file. The VBA project can then be added to an Excel::Writer::XLSX file to enable it to have macros.

An "xlsm" file is a version of an Excel "xlsx" file that contains an additional VBA project binary file. The "xlsm" file format is a collection of mainly XML files in a ZIP container.

The extracted VBA project is an OLE Compound Document in binary format. It is named "vbaProject.bin" and is generally located in the "xl" directory of the "xlsm" file.

See the "add_vba_project()" section of the Excel::Writer::XLSX documentation for more details.

Note: you can also extract the VBA project from an "xlsm" file using the standard Linux "unzip" command:

unzip -j macro01.xlsm xl/vbaProject.bin

On Windows you can use any suitable Unzip application.


$ extract_vba file.xlsm
Extracted 'vbaProject.bin' successfully
$ extract_vba -h # For help.


--help or -h
Print the help documentation.


John McNamara jmcnamara@cpan.org


Version 0.01.