Other API Samples C# logo

Excel 2007-2025 Macro-Enabled Open XML (*.xlsm) SpreadsheetGear API Sample

Description

This sample demonstrates saving to the Macro Enabled Excel 2007-2025 Open XML (*.xlsm) file format using the FileFormat.OpenXMLWorkbookMacroEnabled enumeration option. Note SpreadsheetGear does not support modifying or executing VBA Macros. Existing Macros will be preserved when opened and saved through SpreadsheetGear.

Sample Source Code

// Create a new workbook and some local variables for convenience.
SpreadsheetGear.IWorkbook workbook = SpreadsheetGear.Factory.GetWorkbook();
SpreadsheetGear.IWorksheet worksheet = workbook.Worksheets["Sheet1"];
SpreadsheetGear.IRange cells = worksheet.Cells;

// Rename the worksheet.
worksheet.Name = "My Worksheet";

// Add some cell data.
cells["A1"].Value = "Hello World!";

// Save to Excel 2007 and later compatible Macro-Enabled Open XML (*.xlsm) file.
workbook.SaveAs(@"c:\path\to\workbook.xlsm",
    SpreadsheetGear.FileFormat.OpenXMLWorkbookMacroEnabled);