Introduction
Aspose.Cells FOSS for .NET is a pure managed-code, MIT-licensed library for reading, writing, Manipuler avec Excel .xlsx Les livres de travail sans dépendance Microsoft Office. Installé comme Le Aspose.Cells_FOSS NuGet package, il s’intéresse à n’importe quel projet .NET — applications de console, web APIs, travailleurs de fond et fonctionnalités sans serveur.
Cet article propose un guide fonction par fonction de l’API publique, montrant ce qui est possible et comment invoquer chaque capacité depuis du code C#.
Aperçu des fonctionnalités
Cycle de vie du classeur et de la feuille de calcul
Le point d’entrée pour chaque opération est le Workbook - Créer un de la scratch avec new Workbook(),ou pour en charge un existant .xlsx avec new Workbook(filePath) ou new Workbook(stream).Navigation par la navigation Workbook.Worksheets,et Set Worksheet.Name et Worksheet.VisibilityType,et persiste avec Workbook.Save().Pour les fichiers endommagés, passez un LoadOptions L’exemple avec TryRepairPackage = true et 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);
}
Données et formules des cellules
Écrire des valeurs aux cellules avec Cell.PutValue() - les surcharges acceptent string, int, double, decimal, bool,et DateTime.Lire les valeurs en arrière via Cell.Value, Cell.StringValue,et Cell.Formula.- Créer des formules Excel avec les Cell.Formula La formule : la forme est Il est conservé sur sauvetage et survit un cycle de recharge.
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);
Mise en forme des cellules
Application Style Objets pour contrôler la phonette, remplir, les limites, le format numérique et l’alignement. Récupérer le style actuel avec Cell.GetStyle(),modifier, puis s’engager avec Cell.SetStyle().Pour les fonds, s’installez Style.Pattern = FillPattern.Solid et assigne une Color à Style.ForegroundColor.Utiliser Cells.Merge() pour les cellules de rang.
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}");
Mise en forme conditionnelle
Appliquer les règles de formatisation conditionnelle aux rangs cellulaires par le biais ConditionalFormattingCollection. Règles de soutien FormatConditionType.CellValue, Expression, ColorScale, DataBar,et IconSet.Utiliser OperatorType Pour les opérateurs de comparaison (Between, Equal, GreaterThan,etc. et, en outre, assurer une Style pour les cellules correspondantes, et définir la priorité et - La conduite de stop-if-true par règle.
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");
Validation des données
Ajouter des restrictions d’entrée aux cellules utilisant Worksheet.Validations.Types de validation soutenues incluent ValidationType.List, Decimal, Custom,et plus. Configurer les promptes d’entrée (InputTitle, InputMessageet les messages d’erreur (ErrorTitle, ErrorMessage, ValidationAlertType• Utiliser CellArea.CreateCellArea() définir le délai validé et Validation.AddArea() appliquer une règle aux rangs supplémentaires.
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");
Mise en page et options d’impression
Configurer la configuration de l’impression via Worksheet.PageSetup.Les marges (LeftMarginInch, RightMarginInch, TopMarginInch, BottomMarginInch), Orientation, PaperSize,à la scale, zone d’impression, rangs de titre et colonnes, chevaux et pieds, et ruptures de page. Toutes les paramètres survivent Un voyage de sauvetage.
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");
Paramètres et protection de la feuille de calcul
Contrôle par affichage avec Worksheet.ShowGridlines, ShowRowColumnHeaders, ShowZeros, RightToLeft, Zoom,et TabColor.Protéger les feuilles avec Worksheet.Protect() et configure finement grainée Protection Les drapeaux (Objects, FormatCells, InsertRows, AutoFilter, SelectLockedCellsGérer la hauteur de la ligne, la largeur de colonne, les rangs cachés / colonnes et Les régions partagées via Cells.Rows, Cells.Columns,et 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");
Hyperliens et plages nommées
ajouter extérieur, interne et mailto: Hyperlinks par le biais de HyperlinkCollection.Add().- Sets Hyperlink.TextToDisplay et Hyperlink.ScreenTip pour les étiquettes visibles par l’utilisateur. définir nom Les rangs dans le livre de travail ou la feuille d’écran utilisant DefinedNameCollection.Add() Les rides nommées servent de Anchors de formule stables et sources de données graphique qui survivent à la récharge des fichiers.
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);
Démarrage rapide
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");
Formats soutenus
| Formats | Extension | Lire | Écrire |
|---|---|---|---|
| Xlx | .xlsx | ✓ | ✓ |
| voiture | (dont les différents) | ✓ | — |
Source ouverte et licence
Aspose.Cells FOSS for .NET is published under the MIT license and distributed via NuGet as Aspose.Cells_FOSS.Il est adapté aux projets open source et commerciaux.