# Procs and Cons of XLSX and XLSM



## Chartist

Since upgrading to 2007, I have been saving all my files as XLSM because Im not sure of any differences between the two except that XLSM will support Macros. Are there any other pros and cons to the two formats?

Many thanks


----------



## Chartist

anyone?


----------



## SydneyGeek

From this MSDN document... http://msdn2.microsoft.com/en-au/library/aa338205.aspx#office2007aboutnewfileformat_introduction



> Macro-Enabled Files vs. Macro-Free Files
> Default 2007 Microsoft Office system documents saved in Office XML Formats are intended to be macro-free files, and therefore cannot contain code. This behavior ensures that malicious code, residing in a default document, can never be executed unexpectedly. While 2007 Microsoft Office system documents can still contain and use macros, the user or developer must save these documents as a macro-enabled document type. This safeguard will not affect your ability to build solutions, but allows organizations to use documents with more confidence.
> 
> Macro-enabled files have the exact same file format as macro-free files, but contain additional parts that macro-free files do not. The additional parts depend on the type of automation found in the document. A macro-enabled file that uses VBA contains a binary part that stores the VBA project. Any Excel workbook that uses Excel 4.0–style macros (XLM macros) or any PowerPoint presentation that contains command buttons are also saved as macro-enabled files. If a code-specific part is found in a macro-free file, whether placed there accidentally or maliciously, the Office applications will not allow the code to execute—without exception.
> 
> You can now determine if any code exists within a 2007 Microsoft Office system document before opening it. Previously this "advance notice" was not something that could be easily accomplished outside Office. You can inspect the package file for the existence of any code-based parts and relationships without running Office and without running potentially risky code. If a file looks suspicious, you can remove any parts capable of executing code from the file, so that the code can cause no harm.



I gather from the above that there are no additional features in XLSM vs XLSX, apart from the ability of Excel 2007 tp open XLSM files that contain code. 

Denis


----------



## Chartist

Thanks for that reply...
Ok, I will continue to save al new Excel files as Macro enabled


----------

