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.9

Estilo 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 . WorkbookLoadException quando carregam ficheiros a partir de caminhos fornecidos pelo utilizador.
  • Utilização: Cell.PutValue() com o tipo .NET exato que pretende armazenar pass decimal para moeda, DateTime para encontros.
  • Leia. Cell.StringValue para texto de exibição; utilização Cell.Value quando 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ãoCausa da morteCorreção
WorkbookLoadException em abertoEstrutura ZIP corrompida no XLSXSet (s) LoadOptions.TryRepairPackage = true
Fórmula retorna vazia StringValueFórmula não recalculada sobre a cargaAcessos Cell.StringValue após o Workbook.Save() viagem de ida e volta
Endereço de hiperligação mostra URL cruTextToDisplay não definidoSet (s) Hyperlink.TextToDisplay após o Add()
Folla de folha de trabalho invisívelVisibilityType definido em: HiddenSet (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étodoDescrição:
WorkbookRoot class criar, carregar e salvar quadros de trabalho
Workbook.WorksheetsRetorna o número de dados: WorksheetCollection
Workbook.Save(path)Salva o livro de trabalho no disco .
Workbook.DefinedNamesColeção de intervalos nomeados
Worksheet.CellsAcesso à rede de células
Worksheet.ConditionalFormattingsConjuntos de regras de formatação condicional
Worksheet.ValidationsRegras de validação dos dados
Worksheet.AutoFilterConfiguração do filtro automático
Worksheet.HyperlinksColeção de hiperlinks
Worksheet.PageSetupConfigurações de layout de impressão
Cell.PutValue()Escrever dados de células digitados
Cell.FormulaFigura de fórmula compatível com Excel
Cell.GetStyle() / Cell.SetStyle()Estilo de célula leitura/escritura
Style.PatternPadrão de preenchimento (FillPattern (em inglês)
Style.HorizontalAlignmentAlinhamento das células (HorizontalAlignmentType)
LoadOptionsOpções de carregamento do ficheiro com tolerância a falhas
 Português