Filtrera VBA-projekt när en arbetsbok laddas

Filtrera VBA-projekt när du laddar en Excel-arbetsbok i C#

Vissa .xlsm/.xslb-filer har en extremt stor mängd makron (eller väldigt, väldigt långa makron). Aspose.Cells kommer ovillkorligen att ladda dessa (meta)data när sådana arbetsböcker öppnas. Du kan dock behöva kontrollera dettaLoadDataFilterOptions när du egentligen bara behöver extrahera arknamn för ett stort antal arbetsböcker och därmed hoppa över sådant onödigt innehåll. Detta filter tillhandahålls genom att introducera ett nytt alternativ,LoadDataFilterOptions.VBA.

Exempelkod

Följande exempelkod läser in en arbetsbok så att endast VBA filtreras. En exempelfil för att testa den här funktionen kan laddas ner från följande länk:

sampleMacroEnabledWorkbook.xlsm

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Set the load options, we do not want to load VBA
LoadOptions loadOptions = new LoadOptions(LoadFormat.Auto);
loadOptions.LoadFilter = new LoadFilter(LoadDataFilterOptions.All & ~LoadDataFilterOptions.VBA);
// Create workbook object from sample excel file using load options
Workbook book = new Workbook(sourceDir + "sampleMacroEnabledWorkbook.xlsm", loadOptions);
// Save the output in pdf format
book.Save(outputDir + "OutputSampleMacroEnabledWorkbook.xlsm", SaveFormat.Xlsm);