Caratteristiche
Caratteristiche
Aspose.Cells FOSS for .NET is a pure managed .NET library for creating, reading, and modifying Excel XLSX spreadsheets. The entry point is the Workbook class, che fornisce accesso a fogli di lavoro, nomi definiti e operazioni di salvataggio/carico. Questa pagina riassume ogni area principale con brevi esempi di codice.
Scrittura, caricamento e memorizzazione
Creare una nuova cartella di lavoro con: new Workbook(). Caricare un file XLSX esistente passando il percorso del file al costruttore. Usare LoadOptions Per consentire un carico tollerante ai guasti. Workbook.Save(path) per continuare i cambiamenti.
using Aspose.Cells_FOSS;
// New workbook
var wb = new Workbook();
wb.Worksheets[0].Cells["A1"].PutValue("Hello");
wb.Save("output.xlsx");
// Load with repair options
var opts = new LoadOptions { TryRepairPackage = true, TryRepairXml = true };
try
{
var loaded = new Workbook("input.xlsx", opts);
Console.WriteLine(loaded.Worksheets[0].Cells["A1"].StringValue);
}
catch (WorkbookLoadException ex)
{
Console.WriteLine("Load failed: " + ex.Message);
}Dati e formule delle cellule
Utilizzo: Cell.PutValue() per scrivere stringhe, numeri interi, decimali, booleani e DateTime Valori impostati. Cell.Formula per assegnare una stringa di formule compatibile con Excel. Leggere il testo visualizzato tramite Cell.StringValue e il valore grezzo tramite: Cell.Value.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Qty");
ws.Cells["B1"].PutValue("Price");
ws.Cells["C1"].PutValue("Total");
ws.Cells["A2"].PutValue(10);
ws.Cells["B2"].PutValue(4.99m);
ws.Cells["C2"].Formula = "=A2*B2";
wb.Save("data.xlsx");
var loaded = new Workbook("data.xlsx");
Console.WriteLine(loaded.Worksheets[0].Cells["C2"].StringValue); // 49.9Stile delle celle
Ritracciare e modificare il file di controllo. Style oggetto per qualsiasi cella con: Cell.GetStyle() e di cui al punto 2 Cell.SetStyle().- Il … Style la classe fornisce Font (in grassetto, in corsivo, dimensione, nome), ForegroundColor, Pattern (di tipo: FillPattern), HorizontalAlignment (utilizzando il metodo di HorizontalAlignmentType), e il controllo delle frontiere attraverso la rete europea di sicurezza. Borders.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var cell = wb.Worksheets[0].Cells["A1"];
cell.PutValue("Styled Header");
var style = cell.GetStyle();
style.Font.Bold = true;
style.Font.Size = 14;
style.Pattern = FillPattern.Solid;
style.ForegroundColor = Color.FromArgb(255, 198, 239, 206);
style.HorizontalAlignment = HorizontalAlignmentType.Center;
cell.SetStyle(style);
wb.Save("styled.xlsx");Formattazione condizionale
Worksheet.ConditionalFormattings restituisce un ConditionalFormattingCollection.Chiamami . Add() per creare un insieme di regole, quindi AddCondition() per aggiungere regole utilizzando FormatConditionType e di cui al punto 2 OperatorType.I tipi di condizioni supportate includono: CellValue, Expression, ColorScale, DataBar, e IconSet.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
for (var i = 0; i < 10; i++)
ws.Cells[i, 0].PutValue(i + 1);
var ruleSet = ws.ConditionalFormattings[ws.ConditionalFormattings.Add()];
ruleSet.AddArea(CellArea.CreateCellArea("A1", "A10"));
var rule = ruleSet[ruleSet.AddCondition(FormatConditionType.CellValue, OperatorType.Between, "3", "7")];
var ruleStyle = rule.Style;
ruleStyle.Pattern = FillPattern.Solid;
ruleStyle.ForegroundColor = Color.FromArgb(255, 255, 199, 206);
rule.Style = ruleStyle;
wb.Save("cf.xlsx");Validazione dei dati
Worksheet.Validations restituisce un ValidationCollection.Chiamami . Add(CellArea) - per creare un sistema di Validation Per una gamma di cellule. Type proprietà utilizzando ValidationType (List, Decimal, o Custom) Configurazione Formula1, Formula2, Operator, InputTitle, InputMessage, ErrorTitle, e ErrorMessage.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
var listVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("A1", "A10"))];
listVal.Type = ValidationType.List;
listVal.Formula1 = "\"Open,Closed,Pending\"";
listVal.InCellDropDown = true;
var numVal = ws.Validations[ws.Validations.Add(CellArea.CreateCellArea("B1", "B10"))];
numVal.Type = ValidationType.Decimal;
numVal.Operator = OperatorType.Between;
numVal.Formula1 = "0";
numVal.Formula2 = "100";
numVal.ShowError = true;
wb.Save("validation.xlsx");Filtro automatico
Worksheet.AutoFilter - che espone il AutoFilter Oggetto. AutoFilter.Range Per definire l’intervallo di riga dell’intestazione. Access AutoFilter.FilterColumns (una raccolta) e chiamata Add(columnIndex) per attivare il filtraggio su una specifica colonna.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Name");
ws.Cells["B1"].PutValue("Region");
ws.Cells["C1"].PutValue("Sales");
ws.Cells["A2"].PutValue("Alice"); ws.Cells["B2"].PutValue("North"); ws.Cells["C2"].PutValue(1200);
ws.AutoFilter.Range = "A1:C1";
ws.AutoFilter.FilterColumns.Add(1);
wb.Save("filter.xlsx");Iperlink e nomi definiti
Worksheet.Hyperlinks è un HyperlinkCollection.Chiamami . Add() per inserire URL esterne, riferimenti interne a celle o link mailto. Set Hyperlink.TextToDisplay e di cui al punto 2 Hyperlink.ScreenTip per il testo rivolto all’utente. Workbook.DefinedNames è un DefinedNameCollection; chiamare Add(name, refersTo) per creare intervalli nominati.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ws = wb.Worksheets[0];
ws.Cells["A1"].PutValue("Docs");
var link = ws.Hyperlinks[ws.Hyperlinks.Add("A1", 1, 1, "https://docs.aspose.org/cells/net/")];
link.TextToDisplay = "Documentation";
wb.DefinedNames[wb.DefinedNames.Add("DataRange", "Sheet1!$A$1:$D$10")].Comment = "Main data range";
wb.Save("links.xlsx");Impostazione pagine
Worksheet.PageSetup Controlla i margini di stampa, l’orientamento, la dimensione della carta, le aree di impresa, righe/colonne del titolo, intestazioni e interruzioni delle pagine. PageOrientationType e di cui al punto 2 PaperSizeType - Non è vero.
using Aspose.Cells_FOSS;
var wb = new Workbook();
var ps = wb.Worksheets[0].PageSetup;
ps.Orientation = PageOrientationType.Landscape;
ps.PaperSize = PaperSizeType.PaperA4;
ps.PrintArea = "$A$1:$H$50";
ps.CenterHeader = "My Report";
ps.CenterHorizontally = true;
ps.AddHorizontalPageBreak(25);
wb.Save("paged.xlsx");Gestione delle schede di lavoro
Aggiungere, rinominare, nascondere e riordinare fogli di lavoro attraverso WorksheetCollection. WorksheetCollection.Add(name) restituisce l’indice del nuovo foglio. Set Worksheet.VisibilityType utilizzando: VisibilityType. Fusione di cellule con Cells.Merge() e dimensioni di riga/colonna via Cells.Rows e di cui al punto 2 Cells.Columns.
using Aspose.Cells_FOSS;
var wb = new Workbook();
wb.Worksheets[0].Name = "Summary";
var dataIdx = wb.Worksheets.Add("Data");
wb.Worksheets[dataIdx].VisibilityType = VisibilityType.Hidden;
wb.Worksheets.ActiveSheetName = "Summary";
var ws = wb.Worksheets["Summary"];
ws.Cells["A1"].PutValue("Title");
ws.Cells.Merge(0, 0, 1, 4);
ws.Cells.Rows[0].Height = 30d;
ws.Cells.Columns[0].Width = 20d;
wb.Save("worksheets.xlsx");Suggerimenti e migliori pratiche
- Prendi sempre .
WorkbookLoadExceptionquando si caricano file da percorsi forniti dall’utente. - Utilizzo:
Cell.PutValue()con l’esatto tipo .NET che intendi archiviare passdecimalper valuta,DateTimeper gli appuntamenti. - Leggi .
Cell.StringValueper il testo visualizzato; utilizzare:Cell.Valuequando hai bisogno dell’oggetto .NET grezzo. - Creare i set di regole condizionali per la formattazione nella gamma più ampia necessaria Le regole per riga sono costose nei fogli grandi.
- Chiamami.
wb.Save()una volta alla fine piuttosto che dopo ogni cella scrivere.
Problemi comuni
| Numero di pubblicazione | Causa di morte | Rettifica |
|---|---|---|
WorkbookLoadException in aperto | Struttura ZIP corretta in XLSX | Set di dati LoadOptions.TryRepairPackage = true |
Formula: ritorna vuota StringValue | Formula non ricalcolata sul carico | Accesso Cell.StringValue dopo il Workbook.Save() viaggio di andata e ritorno |
| Indirizzo dell’iperlink mostra URL grezza | TextToDisplay non impostato | Set di dati Hyperlink.TextToDisplay dopo il Add() |
| Scheda di foglio non visibile | VisibilityType impostato su: Hidden | Set di dati ws.VisibilityType = VisibilityType.Visible |
FAQ
Aspose.Cells FOSS per .NET richiede Microsoft Office?
No. La libreria è puro codice gestito senza dipendenza da Office, Excel o COM interop.
Quali formati di file sono supportati?
XLSX (lettura e scrittura). CSV, ODS, PDF e binario XSL non sono supportati in questa versione.
Posso usare questa libreria in un’applicazione commerciale?
Aspose.Cells FOSS è pubblicato sotto la licenza MIT, che permette un uso commerciale illimitato senza royalties.
Qual è la versione minima .NET?
.NET 6.0 o successiva.
Come faccio ad applicare un colore di sfondo a una cella?
Set di dati style.Pattern = FillPattern.Solid e di cui al punto 2 style.ForegroundColor = Color.FromArgb(...), allora chiama . cell.SetStyle(style).
Riassunto di riferimento API
| Classe / metodo | Descrizione |
|---|---|
Workbook | Classe radice creare, caricare e salvare cartelle di lavoro |
Workbook.Worksheets | Ritorna il valore di WorksheetCollection |
Workbook.Save(path) | Salva la cartella di lavoro sul disco |
Workbook.DefinedNames | Raccolta di intervalli denominati |
Worksheet.Cells | Accesso alla rete cellulare |
Worksheet.ConditionalFormattings | Set di regole di formattazione condizionale |
Worksheet.Validations | Regole di convalida dei dati |
Worksheet.AutoFilter | Configurazione del filtro automatico |
Worksheet.Hyperlinks | Raccolta di collegamenti ipertestuali |
Worksheet.PageSetup | Impostazioni del layout di stampa |
Cell.PutValue() | Scrivere dati di cella digitati |
Cell.Formula | Stringa di formule compatibile con Excel |
Cell.GetStyle() / Cell.SetStyle() | Stile di lettura/scrittura delle celle |
Style.Pattern | Modello di riempimento (FillPattern (in numero) |
Style.HorizontalAlignment | Allineamento delle celle (HorizontalAlignmentType) |
LoadOptions | Opzioni per il caricamento dei file con tolleranza ai guasti |