Introduktion

Aspose.Cells FOSS for .NET är ett rent managed-code, MIT-licensierat bibliotek för att läsa, skriva, och manipulera Excel .xlsx arbetsböcker utan någon Microsoft Office-beroende. Installerat som Aspose.Cells_FOSS NuGet-paketet integreras det i alla .NET-projekt — konsolappar, webb-API:er, bakgrundsarbetsprocesser och serverlösa funktioner.

Det här inlägget ger en funktion‑för‑funktion‑genomgång av det offentliga API:et, visar vad som är möjligt och hur man anropar varje funktionalitet från C#‑kod.


Funktionsöversikt

Arbetsbok och Arbetsblad Livscykel

Ingångspunkten för varje operation är Workbook‑klassen. Skapa en från grunden med new Workbook(), eller ladda en befintlig .xlsx med new Workbook(filePath) eller new Workbook(stream). Navigera blad via Workbook.Worksheets, sätt Worksheet.Name och Worksheet.VisibilityType, och spara med Workbook.Save(). För skadade filer, skicka en LoadOptions‑instans med TryRepairPackage = true och 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);
}

Celldata och formler

Skriv värden till celler med Cell.PutValue() — överlagringar accepterar string, int, double, decimal, bool och DateTime. Läs tillbaka värden via Cell.Value, Cell.StringValue och Cell.Formula. Ställ in Excel‑formler med egenskapen Cell.Formula; formelsträngen bevaras vid sparning och överlever en omladdningscykel.

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);

Cellformatering

Använd Style-objekt för att styra teckensnitt, fyllning, kanter, talformat och justering. Hämta den aktuella stilen med Cell.GetStyle(), ändra den och sedan bekräfta med Cell.SetStyle(). För bakgrundsfyllningar, ange Style.Pattern = FillPattern.Solid och tilldela en Color till Style.ForegroundColor. Använd Cells.Merge() för att spänna över cellområden.

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}");

Villkorsstyrd formatering

Fäst villkorsformateringsregler till cellområden via ConditionalFormattingCollection.
Regler stödjer FormatConditionType.CellValue, Expression, ColorScale, DataBar, och
IconSet. Använd OperatorType för att ange jämförelseoperatorer (Between, Equal,
GreaterThan, osv.), tilldela en Style till matchade celler, och konfigurera prioritet och
stop-if-true‑beteende per 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

Lägg till inmatningsbegränsningar i celler med Worksheet.Validations. Stödda valideringstyper
inkluderar ValidationType.List, Decimal, Custom, och fler. Konfigurera inmatningspromptar
(InputTitle, InputMessage) och felmeddelanden (ErrorTitle, ErrorMessage,
ValidationAlertType). Använd CellArea.CreateCellArea() för att definiera det validerade intervallet och
Validation.AddArea() för att tillämpa en regel på ytterligare intervall.

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");

Sidinställningar och utskriftsalternativ

Konfigurera utskriftslayout via Worksheet.PageSetup. Ställ in marginaler (LeftMarginInch, RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, skala, utskriftsområde, titelrader och kolumner, sidhuvuden och sidfötter samt sidbrytningar. Alla inställningar överlever en spara‑ladda‑runda.

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");

Arbetsbladinställningar och skydd

Styr per‑bladvisning med Worksheet.ShowGridlines, ShowRowColumnHeaders, ShowZeros, RightToLeft, Zoom och TabColor. Skydda blad med Worksheet.Protect() och konfigurera finfördelade Protection‑flaggor (Objects, FormatCells, InsertRows, AutoFilter, SelectLockedCells). Hantera radhöjd, kolumnbredd, dolda rader/kolumner och sammanfogade regioner via Cells.Rows, Cells.Columns och 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");

Hyperlänkar och namngivna områden

Lägg till externa, interna och mailto: hyperlänkar via HyperlinkCollection.Add(). Ange
Hyperlink.TextToDisplay och Hyperlink.ScreenTip för användarsynliga etiketter. Definiera namngivna
områden på arbetsboks- eller bladnivå med hjälp av DefinedNameCollection.Add() — namngivna
områden fungerar som stabila formelankare och diagramdatakällor som överlever filomladdning.

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);

Snabbstart

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");

Stödda format

FormatFiländelseLäsSkriv
Xlsx.xlsx
Auto(olika)

Öppen källkod och licensiering

Aspose.Cells FOSS för .NET publiceras under MIT-licensen och distribueras via NuGet som
Aspose.Cells_FOSS. Det är lämpligt för både öppen källkod och kommersiella projekt.


Kom igång

Relaterade resurser