Filtrera definierade namn när arbetsboken laddas
Möjliga användningsscenario
Aspose.Cells tillåter dig att filtrera eller ta bort definierade namn som finns i arbetsboken. Använd LoadDataFilterOptions::DefinedNames för att ladda de definierade namnen och använd ~LoadDataFilterOptions::DefinedNames för att ta bort dem när du laddar arbetsboken. Observera att om du tar bort definierade namn kan formler inne i arbetsboken brytas.
Filtrera Definierade namn vid inläsning av arbetsbok
Följande exempelkod laddar den exempel-Excel-filen som innehåller en formel i cell C1 som innehåller de definierade namnen, dvs. * =SUM(MyName1, MyName2) *. Eftersom vi använder ~LoadDataFilterOptions::DefinedNames för att ta bort de definierade namnen när arbetsboken laddas, bryts formeln i cell C1 i utdata Excel-filen och du ser * #NAME? * istället. Se följande skärmbild som visar effekten av koden på den exempel-Excel-filen.
Exempelkod
Aspose::Cells::Startup(); | |
U16String dataDir = u""; | |
//Specify the load options | |
LoadOptions opts; | |
LoadFilter filter(~LoadDataFilterOptions::DefinedNames); | |
//We do not want to load defined names | |
opts.SetLoadFilter(&filter); | |
//Load the workbook | |
Workbook wb = Workbook(dataDir + u"sampleFilterDefinedNamesWhileLoadingWorkbook.xlsx", opts); | |
//Save the output Excel file, it will break the formula in C1 | |
wb.Save(dataDir + u"outputFilterDefinedNamesWhileLoadingWorkbook.xlsx"); | |
Aspose::Cells::Cleanup(); |