Introduktion
Aspose.Cells FOSS for .NET er et rent managed-code, MIT‑licenseret bibliotek til at læse, skrive,
og manipulere Excel .xlsx arbejdsbøger uden nogen Microsoft Office‑afhængighed. Installeret som
Aspose.Cells_FOSS NuGet‑pakken integreres det i ethvert .NET‑projekt — konsolapps, web
API’er, baggrundsarbejdere og serverløse funktioner.
Dette indlæg giver en trin‑for‑trin gennemgang af den offentlige API, som viser, hvad der er muligt, og hvordan man kalder hver funktionalitet fra C#‑kode.
Funktionsoverblik
Arbejdssbog og Arbejdsark Livscyklus
Indgangspunktet for hver operation er klassen Workbook. Konstruer en fra bunden med new Workbook(), eller indlæs en eksisterende .xlsx med new Workbook(filePath) eller new Workbook(stream). Naviger ark via Workbook.Worksheets, sæt Worksheet.Name og Worksheet.VisibilityType, og gem med Workbook.Save(). For beskadigede filer, videregiv en LoadOptions-instans med TryRepairPackage = true og TryRepairXml = true.
using Aspose.Cells_FOSS;
var options = new LoadOptions
{
TryRepairPackage = true,
TryRepairXml = true,
};
try
{
_ = new Workbook("sample.xlsx", options);
}
catch (WorkbookLoadException exception)
{
Console.WriteLine(exception.Message);
}
Celledata og formler
Skriv værdier til celler med Cell.PutValue() — overbelastninger accepterer string, int, double,
decimal, bool og DateTime. Læs værdier tilbage via Cell.Value, Cell.StringValue og
Cell.Formula. Angiv Excel‑formler med egenskaben Cell.Formula; formelstrengen bevares ved gemning og overlever en genindlæsningscyklus.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";
workbook.Save("hello.xlsx");
var loaded = new Workbook("hello.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].Formula);
Console.WriteLine(loaded.Worksheets[0].Cells["C1"].StringValue);
Celleformatering
Anvend Style-objekter til at kontrollere skrifttype, udfyldning, kanter, talformat og justering.
Hent den aktuelle stil med Cell.GetStyle(), muter den, og commit derefter medCell.SetStyle(). For baggrundsudfyldninger skal du sætte Style.Pattern = FillPattern.Solid og tildele enColor til Style.ForegroundColor. Brug Cells.Merge() til at spænde over celleområder.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var cell = workbook.Worksheets[0].Cells["A1"];
cell.PutValue("Styled");
var style = cell.GetStyle();
style.Font.Bold = true;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 241, 196, 15);
cell.SetStyle(style);
Console.WriteLine($"{cell.StringValue} / Bold={cell.GetStyle().Font.Bold}");
Betinget formatering
Vedhæft betingede formateringsregler til celleområder via ConditionalFormattingCollection.
Regler understøtter FormatConditionType.CellValue, Expression, ColorScale, DataBar, ogIconSet. Brug OperatorType til at angive sammenligningsoperatorer (Between, Equal,GreaterThan, osv.), tildel en Style til matchede celler, og konfigurer prioritet og
stop-hvis-sand adfærd pr. regel.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
var cfCollection = sheet.ConditionalFormattings[sheet.ConditionalFormattings.Add()];
cfCollection.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = cfCollection[cfCollection.AddCondition(
FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var style = rule.Style;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
style.Font.Bold = true;
rule.Style = style;
workbook.Save("conditional-formatting.xlsx");
Datavalidering
Tilføj inputbegrænsninger til celler ved hjælp af Worksheet.Validations. Understøttede valideringstyper
omfatter ValidationType.List, Decimal, Custom, og flere. Konfigurer inputspørgsmål
(InputTitle, InputMessage) og fejlmeddelelser (ErrorTitle, ErrorMessage,
ValidationAlertType). Brug CellArea.CreateCellArea() til at definere det validerede område og
Validation.AddArea() til at anvende en regel på yderligere områder.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Validation Sheet";
var listIdx = sheet.Validations.Add(CellArea.CreateCellArea("A1", "A3"));
var listVal = sheet.Validations[listIdx];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed\"";
listVal.IgnoreBlank = true;
listVal.InCellDropDown = true;
listVal.ShowInput = true;
listVal.InputTitle = "Status";
listVal.InputMessage = "Pick a status";
listVal.ShowError = true;
listVal.ErrorTitle = "Invalid";
listVal.ErrorMessage = "Choose from the list";
workbook.Save("validations-sample.xlsx");
Sideopsætning og udskriftsindstillinger
Konfigurer udskriftslayout via Worksheet.PageSetup. Indstil margener (LeftMarginInch,
RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, skala,
udskriftsområde, titelrækker og -kolonner, sidehoveder og -fødder samt sideskift. Alle indstillinger overlever
en gem‑indlæs‑runde.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Print Sheet";
sheet.Cells["A1"].PutValue("Title");
var pageSetup = sheet.PageSetup;
pageSetup.Orientation = PageOrientationType.Landscape;
pageSetup.PaperSize = PaperSizeType.PaperA4;
pageSetup.PrintArea = "$A$1:$C$10";
pageSetup.PrintTitleRows = "$1:$2";
pageSetup.LeftHeader = "Left Header";
pageSetup.CenterFooter = "Center Footer";
pageSetup.PrintGridlines = true;
pageSetup.CenterHorizontally = true;
workbook.Save("page-setup-sample.xlsx");
Regnearksindstillinger og -beskyttelse
Kontroller per‑ark visning med Worksheet.ShowGridlines, ShowRowColumnHeaders,
ShowZeros, RightToLeft, Zoom og TabColor. Beskyt ark med Worksheet.Protect()
og konfigurer finjusterede Protection‑flag (Objects, FormatCells, InsertRows,
AutoFilter, SelectLockedCells). Administrer rækkehøjde, kolonnebredde, skjulte rækker/kolonner og
sammensatte regioner via Cells.Rows, Cells.Columns og Cells.Merge().
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var layout = workbook.Worksheets[0];
layout.Name = "Layout";
layout.VisibilityType = VisibilityType.Hidden;
layout.TabColor = Color.FromArgb(255, 34, 68, 102);
layout.ShowGridlines = false;
layout.Zoom = 85;
layout.Protect();
layout.Protection.FormatCells = true;
layout.Protection.InsertRows = true;
layout.Cells["A1"].PutValue("Merged");
layout.Cells.Rows[1].Height = 22.5d;
layout.Cells.Columns[0].Width = 18.25d;
layout.Cells.Merge(0, 0, 2, 2);
workbook.Save("worksheet-settings-sample.xlsx");
Hyperlinks og navngivne områder
Tilføj eksterne, interne og mailto: hyperlinks via HyperlinkCollection.Add(). IndstilHyperlink.TextToDisplay og Hyperlink.ScreenTip for bruger‑synlige etiketter. Definér navngivne
områder på projektmappe‑ eller ark‑niveau ved hjælp af DefinedNameCollection.Add() — navngivne områder fungerer som
stabile formelankre og diagramdatakilder, der overlever filgenindlæsning.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Docs");
var link = sheet.Hyperlinks[sheet.Hyperlinks.Add("A1", 1, 1, "https://example.com/docs")];
link.TextToDisplay = "Docs";
link.ScreenTip = "External documentation";
var name = workbook.DefinedNames[workbook.DefinedNames.Add("PrimaryRange", "='Sheet1'!$A$1:$D$5")];
name.Comment = "Primary data range";
workbook.Save("hyperlinks-names.xlsx");
Console.WriteLine("Hyperlinks: " + sheet.Hyperlinks.Count);
Console.WriteLine("Defined names: " + workbook.DefinedNames.Count);
Hurtig start
dotnet add package Aspose.Cells_FOSS
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].Formula = "=B1*2";
workbook.Save("output.xlsx");
Understøttede formater
| Format | Filtype | Læs | Skriv |
|---|---|---|---|
| Xlsx | .xlsx | ✓ | ✓ |
| Auto | (various) | ✓ | — |
Open Source & Licensering
Aspose.Cells FOSS for .NET er udgivet under MIT-licensen og distribueres via NuGet som
Aspose.Cells_FOSS. Den er egnet til både open-source og kommercielle projekter.