Filtrera VBA projekt vid inläsning av en arbetsbok
Möjliga användningsscenario
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 denna (meta)data när sådana arbetsböcker öppnas. Du kan behöva kontrollera detta genom LoadDataFilterOptions, när du verkligen bara behöver extrahera kalkylbladsnamn för ett stort antal arbetsböcker och därmed hoppa över sådan onödig innehåll. Denna filter tillhandahålls genom att introducera den nya LoadDataFilterOptions.VBA-optionen.
Exempelkod
Följande exempelkod laddar en arbetsbok så att endast VBA filtreras. Provfil för att testa denna funktion kan laddas ner från nedanstående länk:
sampleMacroEnabledWorkbook.xlsm
// Ange laddningsalternativen, vi vill inte ladda VBA LoadOptions loadOptions = new LoadOptions(LoadFormat.AUTO); loadOptions.setLoadFilter(new LoadFilter(LoadDataFilterOptions.ALL & ~LoadDataFilterOptions.VBA));
// Skapa arbetsboksobjekt från provexcel-fil med laddningsalternativ Workbook book = new Workbook(srcDir + “sampleMacroEnabledWorkbook.xlsm”, loadOptions);
// Spara utmatningen i pdf-format book.save(outDir + “OutputSampleMacroEnabledWorkbook.xlsm”, SaveFormat.XLSM);