Bevezetés
Aspose.Cells FOSS for .NET egy tisztán kezelt kódból álló, MIT licencű könyvtár az olvasáshoz, íráshoz,
és az Excel .xlsx munkafüzetek manipulálásához, Microsoft Office függőség nélkül. Telepítve a
Aspose.Cells_FOSS NuGet csomagként, integrálódik bármely .NET projektbe — konzolalkalmazásokba, web
API-kba, háttérfolyamatokba és szerver nélküli függvényekbe.
Ez a bejegyzés részletesen bemutatja a nyilvános API-t funkciónként, megmutatva, mi lehetséges, és hogyan hívható meg minden képesség C# kódból.
Funkció áttekintése
Munkafüzet és munkalap életciklusa
A minden művelet belépési pontja a Workbook osztály. Hozzon létre egyet a semmiből a new Workbook() segítségével, vagy töltsön be egy meglévő .xlsx a new Workbook(filePath) vagy new Workbook(stream) használatával. Navigáljon a munkalapok között a Workbook.Worksheets segítségével, állítsa be a Worksheet.Name és a Worksheet.VisibilityType értékeket, és mentse el a Workbook.Save() segítségével. Sérült fájlok esetén adjon át egy LoadOptions példányt a TryRepairPackage = true és TryRepairXml = true használatával.
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);
}
Cellák adatai és képletek
Írjon értékeket a cellákba a Cell.PutValue() segítségével — a túlterhelések elfogadják a string, int, double,
decimal, bool és DateTime. Olvassa vissza az értékeket a Cell.Value, Cell.StringValue és
Cell.Formula segítségével. Állítson be Excel képleteket a Cell.Formula tulajdonsággal; a képlet karakterlánca
mentéskor megmarad, és túléli az újratöltési ciklust.
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);
Cellastílus
Alkalmazza a Style objektumokat a betűtípus, kitöltés, szegélyek, számformátum és igazítás vezérléséhez.
Szerezze meg az aktuális stílust a Cell.GetStyle() segítségével, módosítsa, majd kötelezze el aCell.SetStyle(). Háttérkitöltésekhez állítsa be a Style.Pattern = FillPattern.Solid-t, és rendelje hozzá aColor-t a Style.ForegroundColor-hez. Használja a Cells.Merge()-t a cellatartományok kiterjesztéséhez.
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}");
Feltételes formázás
Csatolja a feltételes formázási szabályokat a cellatartományokhoz a ConditionalFormattingCollection segítségével.
A szabályok támogatják a FormatConditionType.CellValue, Expression, ColorScale, DataBar, ésIconSet. Használja a OperatorType-t az összehasonlító operátorok megadásához (Between, Equal,GreaterThan, stb.), rendelje hozzá a Style-t a megfelelő cellákhoz, és állítsa be a prioritást és
a stop-if-true viselkedést szabályonként.
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");
Adatellenőrzés
Adjon meg bemeneti korlátozásokat a cellákhoz a Worksheet.Validations használatával. Támogatott ellenőrzési típusok
közé tartozik a ValidationType.List, Decimal, Custom, és továbbiak. Állítson be bemeneti felkéréseket
(InputTitle, InputMessage) és hibaüzeneteket (ErrorTitle, ErrorMessage,
ValidationAlertType). Használja a CellArea.CreateCellArea()-t a validált tartomány meghatározásához és
Validation.AddArea()-t a szabály alkalmazásához további tartományokra.
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");
Oldalbeállítás és nyomtatási beállítások
A nyomtatási elrendezést a Worksheet.PageSetup segítségével konfigurálja. Állítsa be a margókat (LeftMarginInch, RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, a méretezést, a nyomtatási területet, a cím sorokat és oszlopokat, a fejlécet és láblécet, valamint az oldaltöréseket. Minden beállítás megmarad egy mentés‑betöltés körfolyamat során.
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");
Munkalap beállításai és védelem
Vezérelje az egyes munkalapok megjelenítését a Worksheet.ShowGridlines, ShowRowColumnHeaders,
ShowZeros, RightToLeft, Zoom és TabColor. Védje a munkalapokat a Worksheet.Protect()
segítségével, és állítson be finomhangolt Protection jelzőket (Objects, FormatCells, InsertRows,
AutoFilter, SelectLockedCells). Kezelje a sormagasságot, oszlopszélességet, rejtett sorokat/oszlopokat, és
az egyesített területeket a Cells.Rows, Cells.Columns és Cells.Merge() segítségével.
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");
Hiperhivatkozások és megnevezett tartományok
Adjon hozzá külső, belső és mailto: hiperhivatkozásokat a HyperlinkCollection.Add() segítségével. Állítsa be
Hyperlink.TextToDisplay és Hyperlink.ScreenTip felhasználó számára látható címkéket. Definiáljon névvel ellátott
tartományokat a munkafüzet vagy munkalap szintjén a DefinedNameCollection.Add() használatával — a névvel ellátott tartományok stabil képlet horgonyként és diagram adatforrásként szolgálnak, amelyek túlélnek egy fájl újratöltését.
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);
Gyors kezdés
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");
Támogatott formátumok
| Formátum | Kiterjesztés | Olvasás | Írás |
|---|---|---|---|
| Xlsx | .xlsx | ✓ | ✓ |
| Auto | (különböző) | ✓ | — |
Nyílt forráskód és licencelés
Aspose.Cells FOSS for .NET a MIT licenc alatt kerül kiadásra, és a NuGet-en keresztül terjesztik
Aspose.Cells_FOSS. Alkalmas nyílt forráskódú és kereskedelmi projektekhez egyaránt.