public static void CreateNewExcelFile() { Microsoft.Vbe.Interop.VBComponent xlMod; Microsoft.Vbe.Interop.VBComponent xlModule; Excel.Application app = new Excel.Application(); Excel.Workbook workbook = app.Workbooks.Add(); Excel.Worksheet worksheet = workbook.Worksheets[1]; worksheet.Name = "worksheet_table"; //add the macro to the module excel workbook here. xlModule = workbook.VBProject.VBComponents.Add(VBIDE.vbext_ComponentType.vbext_ct_StdModule); xlModule.Name = "ModuleBasic"; //add the macro to the sheet workbook here. xlMod = workbook.VBProject.VBComponents.Item(worksheet.CodeName); //Add(VBIDE.vbext_ComponentType.vbext_ct_Document); //xlMod.Name = "ModuleBasic"; InsertionMacroVbAinFile.InsertMacroInExcel(app, xlMod, xlModule); DataParser.ParseJsonToObject(app, workbook, worksheet); DataParser.ParseObjectToSpreadSheet(); SorterExcelElements.SortByColumnAscending(worksheet); FilteringOnHeadersForTable.AddHeaderFilters(worksheet); BordersMaker.DrawFullTableBorders(app, workbook, worksheet); PivotTable.CreatePivotTable(app, workbook, worksheet); Button.ExcelAddButtonWithVba(app, workbook, worksheet); SaveExcelFile.SaveNewExcelFile(app, workbook, worksheet, xlMod, xlModule); }