Az Aspose.Cells FOSS for .NET egy ingyenes, MIT licencű nyílt forráskódú könyvtár az Excel táblázatfájlok .NET alkalmazásokban történő kezeléséhez. Telepítheted egyetlen dotnet add package Aspose.Cells_FOSS parancs segítségével, és elkezdhetsz munkafüzeteket létrehozni, cellákat olvasni, stílusokat alkalmazni, feltételes formázást, hiperhivatkozásokat, adatellenőrzést és automatikus szűrőket hozzáadni — mindezt anélkül, hogy a Microsoft Excel vagy bármely natív Office könyvtár szükséges lenne.
A könyvtár tiszta API-t biztosít, amely a Workbook, Worksheet, Cells és Cell köré épül — a minden táblázatfejlesztő által ismert objektumok. Hozz létre egy Workbook-ot egy meglévő .xlsx fájl betöltéséhez vagy egy üres létrehozásához, a munkalapokhoz a Worksheets gyűjteményen keresztül férhetsz hozzá, a cellaértékeket a PutValue segítségével olvashatod és írhatod, és a stílusokat a GetStyle()/SetStyle() használatával alkalmazhatod. A képletek szó szerint karakterláncként tárolódnak, és a megjelenítő nyitáskor értékeli ki őket, nem a könyvtár futásidőben.
Mivel a könyvtár tisztán kezelt .NET kód, natív függőségek nélkül, azonos módon fut Windows, macOS, Linux, Docker konténerek és szerver nélküli környezetek, például Azure Functions és AWS Lambda esetén is. Az MIT licenc korlátlan kereskedelmi felhasználást engedélyez, jogdíjak, felhasználói vagy telepítési díjak nélkül.
Workbook(fileName) and Save(fileName).string, int, bool, decimal, and DateTime values with Cell.PutValue(value).Cell.StringValue, Cell.Value, and Cell.IntValue.Cell.Formula — evaluated by Excel on open.Workbook.Worksheets..xlsx without Office.CellStyle.Font.CellStyle.ForegroundColor and FillPattern.Solid.FormatConditionType.CellValue, Expression, ColorScale, DataBar, and IconSet rules via Worksheet.ConditionalFormattings.StyleRepository.Normalize(style) for consistent style application.ValidationCollection.Add().OperatorType.Between, GreaterThan, LessThan, and others.ValidationType.WholeNumber, Decimal, List, Date, or Custom.AutoFilter and AutoFilter.FilterColumns.CellArea.CreateCellArea(start, end).HyperlinkCollection.Add().DefinedNameCollection.Add().WorkbookProtection.Worksheet.Protect().LoadDiagnostics and LoadIssue.Install the NuGet package, then create a Workbook, access the first Worksheet, and write values to cells using PutValue. The example demonstrates writing multiple value types and performing a save-and-reload round trip.
dotnet add package Aspose.Cells_FOSS
using Aspose.Cells_FOSS;
var outputPath = "cell-data-roundtrip.xlsx";
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Cells["A1"].PutValue("Hello");
sheet.Cells["B1"].PutValue(123);
sheet.Cells["C1"].PutValue(true);
sheet.Cells["D1"].PutValue(12.5m);
sheet.Cells["F1"].PutValue(10);
sheet.Cells["G1"].Formula = "=F1*2";
workbook.Save(outputPath);
var loaded = new Workbook(outputPath);
var loadedSheet = loaded.Worksheets[0];
Console.WriteLine(loadedSheet.Cells["A1"].StringValue);
Console.WriteLine(loadedSheet.Cells["G1"].Formula);
Add conditional formatting rules to highlight cell ranges. The example applies a between-value rule with a solid fill, an expression rule, a color scale, a data bar, and an icon set.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Conditional Formatting";
for (var i = 0; i < 10; i++)
sheet.Cells[i, 0].PutValue(i + 1);
var cfCol = sheet.ConditionalFormattings[sheet.ConditionalFormattings.Add()];
cfCol.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = cfCol[cfCol.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");
Create external and internal hyperlinks, then define named ranges scoped to the workbook or a specific sheet.
using Aspose.Cells_FOSS;
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "Links";
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 docs";
var name = workbook.DefinedNames[workbook.DefinedNames.Add("GlobalRange", "='Links'!$A$1:$D$5")];
name.Comment = "Primary sample range";
workbook.Save("hyperlinks-and-names.xlsx");