Bevezetés
Aspose.Cells FOSS for .NET is a pure managed-code, MIT-licensed library for reading, writing, és az Excel manipulálása. .xlsx munkafüzeteket, amelyek nem függnek a Microsoft Office-tól. A programot úgy telepítik, mint a) az Aspose.Cells_FOSS A NuGet csomag integrálható bármely .NET projektbe konzol alkalmazások, webes API-k, háttérmunkások és szerver nélküli funkciók.
Ez a bejegyzés funkciókonként bemutatja az API-t, és megmutatja, hogy mi lehetséges és hogyan lehet minden képességet C# kódból hívni.
A funkció áttekintése
Munkafüzet és munkalap Életciklus
Minden művelet belépési pontja a következő: Workbook Egyikük az első osztály. new Workbook(), vagy töltsön egy meglévő .xlsx a következők: new Workbook(filePath) vagy a következő: new Workbook(stream).A navigációs lapok a következőkben vannak: Workbook.Worksheets, szett Worksheet.Name és a Worksheet.VisibilityType, és ragaszkodik hozzá. Workbook.Save().A károsodott fájlokhoz egy LoadOptions példa TryRepairPackage = true és a 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);
}
Cellaadatok és képletek
Az értékek beírása a cellákba Cell.PutValue() túlterhelés elfogadható string, int, double, decimal, bool, és DateTime. Az értékek visszaolvasása a Cell.Value, Cell.StringValue, és Cell.Formula.A Excel képleteket a következővel kell beállítani: Cell.Formula tulajdonság; a képlet szalagszoros az: mentve, és túlél egy újratöltés ciklusát.
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);
Cella stílusosítás
A kérelmet be kell nyújtani. Style objektumok, amelyek a betűtípusok, kitöltések, határok és számformátum irányítását szolgálják. A jelenlegi stílushoz a következő funkcióval forduljon: Cell.GetStyle(), mutálni, majd elkötelezni a Cell.SetStyle().A háttér betöltésére, a következő beállítás: Style.Pattern = FillPattern.Solid és hozzárendel egy Color a … Style.ForegroundColor.Használja. Cells.Merge() a cellák hatótávolságára.
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ételezett formázás
A cellák tartományához feltétel szerinti formázási szabályokat csatolni a ConditionalFormattingCollection. A szabályok támogatása FormatConditionType.CellValue, Expression, ColorScale, DataBar,és a következők: IconSet.Használja. OperatorType a összehasonlító operátorok meghatározása (Between, Equal, GreaterThan, stb.), a Style az azonosított cellákra, és a prioritást beállítja, valamint a szabály szerinti megállás-ha igaz viselkedés.
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");
Adatértékelés
A cellákhoz bevezető korlátozásokat hozzáadni a következők segítségével: Worksheet.Validations.Támogatott érvényesítési típusok a következők: ValidationType.List, Decimal, Custom, és még sok más. Bejutási kérés konfigurálása (InputTitle, InputMessage) és hibameghatározások (ErrorTitle, ErrorMessage, ValidationAlertType) Használat CellArea.CreateCellArea() a validált tartomány meghatározása, és Validation.AddArea() a szabály további tartományokra való alkalmazása.
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");
Oldalak beállítása és nyomtatási lehetőségek
A nyomtatás felállítása a Worksheet.PageSetup.Margokat állapítani (LeftMarginInch, RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize, méret, A nyomtatási terület, címsorok és oszlopok, fejlapok vagy lábjegyek, valamint az oldalmegszakítások. Minden beállítás fennmarad a következőkben: egy megtakarított rakományú utazás.
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édelme
A vezérlőlaponkénti kijelző: Worksheet.ShowGridlines, ShowRowColumnHeaders, ShowZeros, RightToLeft, Zoom,és a következők: TabColor.A védőlapok a következőkben vannak: Worksheet.Protect() és finomszemű formátumban Protection zászlók (Objects, FormatCells, InsertRows, AutoFilter, SelectLockedCells) A sormagasság, a oszlop szélességének kezelése, az elrejtett sorok/oszlopok és egyesített régiók, a Cells.Rows, Cells.Columns,és a következők: 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");
Hyperlinkek és megnevezett tartományok
Adjunk hozzá külső, belső és mailto: hiperlinkek a WEB-en keresztül. HyperlinkCollection.Add().- Megállt. Hyperlink.TextToDisplay és a következők: Hyperlink.ScreenTip A felhasználó által látható címkékhez: definiálja a “Named” (neve) -t. a munkafüzet vagy az arcon található tartományok, amelyekben DefinedNameCollection.Add() a megnevezett tartományok az alábbiak: stabil képlet-nyakok és diagramadatforrások, amelyek túlélik a 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 | A Bizottság | Olvasd! | Írj! |
|---|---|---|---|
| Xlsx | .xlsx | ✓ | ✓ |
| Autó. | (különböző) | ✓ | — |
Nyitott forráskódú és licenckészítés
Aspose.Cells FOSS for .NET is published under the MIT license and distributed via NuGet as Aspose.Cells_FOSS.Az Open Source és kereskedelmi projektek számára egyaránt alkalmas.