Características
Características
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 Esta página resume todas as principais áreas de recursos com exemplos breves de código.
Livro de trabalho Criar, carregar e salvar
Criar um novo livro com: new Workbook().Carregar um arquivo XLSX existente passando um caminho de arquivos para o constructor. Use LoadOptions Para permitir a carga tolerante às falhas. Workbook.Save(path) para persistir em mudanças.
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);
}Dados e fórmulas de células
Utilização: Cell.PutValue() para escrever string, inteiros, decimais, booleanos e DateTime Valores definidos. Cell.Formula para atribuir uma cadeia de fórmulas compatível com o Excel. Leia novamente texto exibido via Cell.StringValue e o valor bruto através de: 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.9Estilo de célula
Obter e modificar o código-fonte. Style objeto para qualquer célula com: Cell.GetStyle() e a) Cell.SetStyle().O . Style classe fornece Font (em negrito, em itálico, tamanho e nome), ForegroundColor, Pattern (de tipo: FillPattern), HorizontalAlignment (utilizando o código de identificação) HorizontalAlignmentType), e controlo de fronteiras através da União Europeia. 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");Formatação condicional
Worksheet.ConditionalFormattings retorna um ConditionalFormattingCollection.- Ligue. Add() para criar um conjunto de regras, então AddCondition() para adicionar regras usando: FormatConditionType e a) OperatorType.Os tipos de condições suportadas incluem: 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");Validação de dados
Worksheet.Validations retorna um ValidationCollection.- Ligue. Add(CellArea) para criar um Validation Para uma gama de células. Type propriedade utilizando ValidationType (List, Decimal, ou Custom) Configuração 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 automático
Worksheet.AutoFilter expõe o AutoFilter Objeto. AutoFilter.Range Para definir o intervalo de linha do cabeçalho. Access AutoFilter.FilterColumns (uma coleção) e a chamada de Add(columnIndex) para ativar a filtragem numa coluna específica.
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");Hiperlinks e nomes definidos
Worksheet.Hyperlinks é um HyperlinkCollection.- Ligue. Add() para inserir URLs externos, referências internas de células ou links mailto. Set Hyperlink.TextToDisplay e a) Hyperlink.ScreenTip para texto voltado para o utilizador. Workbook.DefinedNames é um DefinedNameCollection; chamada Add(name, refersTo) para criar intervalos nomeados.
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");Configuração da página
Worksheet.PageSetup Controla as margens de impressão, a orientação, o tamanho do papel, área de imprensa, linhas/colunas de título, cabeçalhos, pés e interromper páginas. PageOrientationType e a) PaperSizeType - Não.
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");Gestão de folhas de trabalho
Adicionar, renomear, esconder e reordenar folhas de trabalho através do WorksheetCollection. WorksheetCollection.Add(name) Retorna o índice da nova folha. Set Worksheet.VisibilityType Utilização de: VisibilityType.Celas de fusão com: Cells.Merge() e dimensionamento de filas/colunas via Cells.Rows e a) 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");Dicas e melhores práticas
- Sempre apanhar .
WorkbookLoadExceptionquando carregam ficheiros a partir de caminhos fornecidos pelo utilizador. - Utilização:
Cell.PutValue()com o tipo .NET exato que pretende armazenar passdecimalpara moeda,DateTimepara encontros. - Leia.
Cell.StringValuepara texto de exibição; utilizaçãoCell.Valuequando você precisa do objeto .NET cru. - Crie conjuntos de regras de formatação condicional na faixa mais ampla que você precisa as regras por linha são caras em folhas grandes.
- Chama-me .
wb.Save()uma vez no final, em vez de escrever depois de cada célula.
Problemas comuns
| Emissão | Causa da morte | Correção |
|---|---|---|
WorkbookLoadException em aberto | Estrutura ZIP corrompida no XLSX | Set (s) LoadOptions.TryRepairPackage = true |
Fórmula retorna vazia StringValue | Fórmula não recalculada sobre a carga | Acessos Cell.StringValue após o Workbook.Save() viagem de ida e volta |
| Endereço de hiperligação mostra URL cru | TextToDisplay não definido | Set (s) Hyperlink.TextToDisplay após o Add() |
| Folla de folha de trabalho invisível | VisibilityType definido em: Hidden | Set (s) ws.VisibilityType = VisibilityType.Visible |
FAQ
Aspose.Cells FOSS para .NET requer Microsoft Office?
Não. A biblioteca é puro código gerenciado sem dependência do Office, Excel ou COM interop.
Quais formatos de arquivo são suportados?
XLSX (leia e escreva). CSV, ODS, PDF e binário XSL não são suportados nesta versão.
Posso usar esta biblioteca numa aplicação comercial?
Sim, o Aspose.Cells FOSS é publicado sob a licença MIT que permite uso comercial ilimitado sem royalties.
Qual é a versão mínima do .NET?
.NET 6.0 ou posterior.
Como aplicar uma cor de fundo a uma célula?
Set (s) style.Pattern = FillPattern.Solid e a) style.ForegroundColor = Color.FromArgb(...),Então , liga-me . cell.SetStyle(style).
Resumo de referência da API
| Classe / Método | Descrição: |
|---|---|
Workbook | Root class criar, carregar e salvar quadros de trabalho |
Workbook.Worksheets | Retorna o número de dados: WorksheetCollection |
Workbook.Save(path) | Salva o livro de trabalho no disco . |
Workbook.DefinedNames | Coleção de intervalos nomeados |
Worksheet.Cells | Acesso à rede de células |
Worksheet.ConditionalFormattings | Conjuntos de regras de formatação condicional |
Worksheet.Validations | Regras de validação dos dados |
Worksheet.AutoFilter | Configuração do filtro automático |
Worksheet.Hyperlinks | Coleção de hiperlinks |
Worksheet.PageSetup | Configurações de layout de impressão |
Cell.PutValue() | Escrever dados de células digitados |
Cell.Formula | Figura de fórmula compatível com Excel |
Cell.GetStyle() / Cell.SetStyle() | Estilo de célula leitura/escritura |
Style.Pattern | Padrão de preenchimento (FillPattern (em inglês) |
Style.HorizontalAlignment | Alinhamento das células (HorizontalAlignmentType) |
LoadOptions | Opções de carregamento do ficheiro com tolerância a falhas |