Features
Functies
Aspose.Cells FOSS voor .NET is een zuivere beheerde .NET bibliotheek voor het maken, lezen en wijzigen van Excel XLSX-spreadsheets. Het toegangspunt is de Workbook klasse, die toegang biedt tot werkbladen, gedefinieerde namen en opslaan/laden-bewerkingen. Deze pagina vat elk belangrijk functiegebied samen met korte codevoorbeelden.
Werkmap maken, laden en opslaan
Maak een nieuwe werkmap met new Workbook(). Laad een bestaand XLSX-bestand door een bestandspad door te geven aan de constructor. Gebruik LoadOptions om fouttolerant laden in te schakelen. Roep Workbook.Save(path) aan om wijzigingen te bewaren.
using Aspose.Cells_FOSS;
// New workbook
var wb = new Workbook();
wb.Worksheets[0].Cells["A1"].PutValue("Hello");
wb.Save("output.xlsx");
// Load with repair options
var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };
try
{
var loaded = new Workbook("input.xlsx", opts);
Console.WriteLine(loaded.Worksheets[0].Cells["A1"].StringValue);
}
catch (WorkbookLoadException ex)
{
Console.WriteLine("Load failed: " + ex.Message);
}Celgegevens en formules
Gebruik Cell.PutValue() om strings, gehele getallen, decimalen, booleans en DateTime waarden te schrijven. Stel Cell.Formula in om een Excel-compatibele formule-string toe te wijzen. Lees de weergavetekst terug via Cell.StringValue en de ruwe waarde via Cell.Value.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Qty");
ws.Cells["B1"].PutValue("Price");
ws.Cells["C1"].PutValue("Total");
ws.Cells["A2"].PutValue(10);
ws.Cells["B2"].PutValue(4.99m);
ws.Cells["C2"].Formula = "=A2*B2";
wb.Save("data.xlsx");
var loaded = new Workbook("data.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C2"].StringValue); // 49.9Celopmaak
Haal het Style object op en wijzig het voor elke cel met Cell.GetStyle() en Cell.SetStyle(). De Style klasse biedt Font (vet, cursief, grootte, naam), ForegroundColor, Pattern (van type FillPattern), HorizontalAlignment (met behulp van HorizontalAlignmentType), en randcontrole via Borders.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var cell = wb.Worksheets[0].Cells["A1"];
cell.PutValue("Styled Header");
var style = cell.GetStyle();
style.Font.Bold = true;
style.Font.Size = 14;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 198, 239, 206);
style.HorizontalAlignment = HorizontalAlignmentType.Center;
cell.SetStyle(style);
wb.Save("styled.xlsx");Voorwaardelijke opmaak
Worksheet.ConditionalFormattings retourneert een ConditionalFormattingCollection. Roep Add() aan om een regelset te maken, roep daarna AddCondition() aan om regels toe te voegen met FormatConditionType en OperatorType. Ondersteunde conditietypen omvatten CellValue, Expression, ColorScale, DataBar en IconSet.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
for (var i = 0; i < 10; i++)
ws.Cells[i, 0].PutValue(i + 1);
var ruleSet = ws.ConditionalFormattings[ws.ConditionalFormattings.Add()];
ruleSet.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = ruleSet[ruleSet.AddCondition(FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var ruleStyle = rule.Style;
ruleStyle.Pattern = FillPattern.Solid;
ruleStyle.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
rule.Style = ruleStyle;
wb.Save("cf.xlsx");Gegevensvalidatie
Worksheet.Validations retourneert een ValidationCollection. Roep Add(CellArea) aan om een Validation voor een celbereik te maken. Stel de Type eigenschap in met ValidationType (List, Decimal of Custom). Configureer Formula1, Formula2, Operator, InputTitle, InputMessage, ErrorTitle en ErrorMessage.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
var listVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("A1", "A10"))];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed,Pending\"";
listVal.InCellDropDown = true;
var numVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("B1", "B10"))];
numVal.Type = ValidationType.Decimal;
numVal.Operator = OperatorType.Between;
numVal.Formula1 = "0";
numVal.Formula2 = "100";
numVal.ShowError = true;
wb.Save("validation.xlsx");Auto-filter
Worksheet.AutoFilter maakt het AutoFilter object beschikbaar. Stel AutoFilter.Range in om het bereik van de koprij te definiëren. Toegang tot AutoFilter.FilterColumns (een collectie) en roep Add(columnIndex) aan om filtering te activeren op een specifieke kolom.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Name");
ws.Cells["B1"].PutValue("Region");
ws.Cells["C1"].PutValue("Sales");
ws.Cells["A2"].PutValue("Alice"); ws.Cells["B2"].PutValue("North"); ws.Cells["C2"].PutValue(1200);
ws.AutoFilter.Range = "A1:C1";
ws.AutoFilter.FilterColumns.Add(1);
wb.Save("filter.xlsx");Hyperlinks en gedefinieerde namen
Worksheet.Hyperlinks is een HyperlinkCollection. Roep Add() aan om externe URL’s, interne celreferenties of mailto-links in te voegen. Stel Hyperlink.TextToDisplay en Hyperlink.ScreenTip in voor gebruikersgerichte tekst. Workbook.DefinedNames is een DefinedNameCollection; roep Add(name, refersTo) aan om benoemde bereiken te maken.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Docs");
var link = ws.Hyperlinks[ws.Hyperlinks.Add("A1", 1, 1, "https://docs.aspose.org/cells/net/")];
link.TextToDisplay = "Documentation";
wb.DefinedNames[wb.DefinedNames.Add("DataRange", "Sheet1!$A$1:$D$10")].Comment = "Main data range";
wb.Save("links.xlsx");Pagina-instelling
Worksheet.PageSetup regelt afdrukmarges, oriëntatie, papierformaat, afdrukgebied, titelrijen/-kolommen, kopteksten, voetteksten en paginawijzigingen. Gebruik PageOrientationType en PaperSizeType enumeraties.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ps = wb.Worksheets[0].PageSetup;
ps.Orientation = PageOrientationType.Landscape;
ps.PaperSize = PaperSizeType.PaperA4;
ps.PrintArea = "$A$1:$H$50";
ps.CenterHeader = "My Report";
ps.CenterHorizontally = true;
ps.AddHorizontalPageBreak(25);
wb.Save("paged.xlsx");Werkbladbeheer
Voeg werkbladen toe, hernoem, verberg en herschik ze via WorksheetCollection. WorksheetCollection.Add(name) retourneert de index van het nieuwe blad. Stel Worksheet.VisibilityType in met behulp van VisibilityType. Voeg cellen samen met Cells.Merge() en beheer de grootte van rijen/kolommen via Cells.Rows en Cells.Columns.
using Aspose.Cells_FOSS;
var wb = new Workbook();
wb.Worksheets[0].Name = "Summary";
var dataIdx = wb.Worksheets.Add("Data");
wb.Worksheets[dataIdx].VisibilityType = VisibilityType.Hidden;
wb.Worksheets.ActiveSheetName = "Summary";
var ws = wb.Worksheets["Summary"];
ws.Cells["A1"].PutValue("Title");
ws.Cells.Merge(0, 0, 1, 4);
ws.Cells.Rows[0].Height = 30d;
ws.Cells.Columns[0].Width = 20d;
wb.Save("worksheets.xlsx");Tips en best practices
- Vang
WorkbookLoadExceptionaltijd op bij het laden van bestanden vanuit door de gebruiker opgegeven paden. - Gebruik
Cell.PutValue()met het exacte .NET-type dat je wilt opslaan — geefdecimaldoor voor valuta,DateTimevoor datums. - Lees
Cell.StringValuevoor weergavetekst; gebruikCell.Valuewanneer je het ruwe .NET object nodig hebt. - Maak conditionele opmaakregelsets aan op het breedste bereik dat je nodig hebt — per-rij regels zijn duur in grote werkbladen.
- Roep
wb.Save()één keer aan het einde aan in plaats van na elke celbewerking.
Veelvoorkomende problemen
| Probleem | Oorzaak | Oplossing |
|---|---|---|
WorkbookLoadException bij openen | Corrupt ZIP structuur in XLSX | Instellen LoadOptions.TryRepairPackage = true |
Formule retourneert lege StringValue | Formule niet opnieuw berekend bij laden | Toegang tot Cell.StringValue na Workbook.Save() round-trip |
| Hyperlinkadres toont ruwe URL | TextToDisplay niet ingesteld | Stel Hyperlink.TextToDisplay na Add() |
| Werkbladtabblad niet zichtbaar | VisibilityType ingesteld op Hidden | Instellen ws.VisibilityType = VisibilityType.Visible |
FAQ
Vereist Aspose.Cells FOSS voor .NET Microsoft Office?
Nee. De bibliotheek bestaat uit zuivere managed code zonder enige afhankelijkheid van Office, Excel of COM-interoperabiliteit.
Welke bestandsformaten worden ondersteund?
XLSX (lezen en schrijven). CSV, ODS, PDF en binaire XLS worden niet ondersteund in deze release.
Kan ik deze bibliotheek gebruiken in een commerciële applicatie?
Ja. Aspose.Cells FOSS wordt gepubliceerd onder de MIT License, die onbeperkt commercieel gebruik toestaat zonder royalty’s.
Wat is de minimale .NET versie?
.NET 6.0 of later.
Hoe pas ik een achtergrondkleur toe op een cel?
Stel style.Pattern = FillPattern.Solid en style.ForegroundColor = Color.FromArgb(...) in, roep vervolgens cell.SetStyle(style) aan.
API Reference Samenvatting
| Klasse / Methode | Beschrijving |
|---|---|
Workbook | Rootklasse — maak, laad, sla werkboeken op |
Workbook.Worksheets | Retourneert de WorksheetCollection |
Workbook.Save(path) | Slaat de werkmap op op schijf |
Workbook.DefinedNames | Collectie van benoemde bereiken |
Worksheet.Cells | Toegang tot celraster |
Worksheet.ConditionalFormattings | Voorwaardelijke opmaakregelsets |
Worksheet.Validations | Gegevensvalidatieregels |
Worksheet.AutoFilter | Auto-filterconfiguratie |
Worksheet.Hyperlinks | Hyperlinkverzameling |
Worksheet.PageSetup | Afdruklay-outinstellingen |
Cell.PutValue() | Getypte celgegevens schrijven |
Cell.Formula | Excel-compatibele formulestring |
Cell.GetStyle() / Cell.SetStyle() | Celstijl lezen/schrijven |
Style.Pattern | Vulpatroon (FillPattern enum) |
Style.HorizontalAlignment | Celuitlijning (HorizontalAlignmentType) |
LoadOptions | Opties voor fouttolerante bestandsladen |