Introdução
O gerenciamento de planilhas é o núcleo do crate aspose-cells-foss-rust: os objetos que modelam uma pasta de trabalho, suas planilhas e suas células, e as operações que transformam dados Rust em arquivos XLSX apresentáveis. Esta postagem percorre essa superfície — desde a criação de planilhas e a gravação de valores tipados até a estilização, layout de página e os recursos estruturais que tornam as pastas de trabalho utilizáveis: comentários, hyperlinks, tabelas e nomes definidos.
Tudo o que é mostrado aqui faz parte da crate de código aberto, licenciada sob MIT. Nenhuma instalação do Microsoft Office está envolvida em nenhum momento; a biblioteca lê e grava o formato de pacote XLSX diretamente.
Esta seção foi revisada em relação ao modelo de código-fonte atual para o comportamento mais recente do produto e a cobertura de API.
Recursos Principais
Planilhas e Coleções de Células
As planilhas são gerenciadas através das coleções de planilhas da pasta de trabalho. As folhas são acessadas por índice ou nome, renomeadas com set_name, e suas células são obtidas através de get_cells (leitura) ou get_cells_mut (escrita):
let mut workbook = Workbook::new();
{
let mut worksheets = workbook.get_worksheets_mut();
let sheet = worksheets.get(0)?;
sheet.set_name("Charts")?;
{
let mut cells = sheet.get_cells_mut();
cells.get("A1")?.put_value_string("Month")?;
cells.get("B1")?.put_value_string("Sales")?;
}
}
Valores Tipados por Nome ou Índice
As células aceitam strings, inteiros, booleanos, decimais e datas/hora através de setters tipados. As células podem ser endereçadas no estilo A1 (get("B3")) ou numericamente (get_by_index(row, column)), o que se adequa a layouts gerados:
for month in 1..=12_u32 {
cells
.get_by_index(month, 0)
.put_value_string(format!("Month {month}"))?;
cells
.get_by_index(month, 1)
.put_value_i32((month as i32 * 1000) + (month as i32 * 50))?;
}
Fórmulas com Valores em Cache
put_formula_with_cached_value armazena o texto da fórmula juntamente com o valor que o Excel deve exibir antes da primeira recálculo — importante quando o arquivo é consumido por outras ferramentas que leem resultados em cache:
cells.get("F1")?.put_value_i32(10)?;
cells.get("G1")?
.put_formula_with_cached_value("=F1*2", CellValue::Number(20.0))?;
Estilização e Layout de Página
CellStyle contém Font, Fill e Borders; StyleFlag seleciona quais aspectos de estilo uma atualização aplica. NumberFormat controla a renderização de valores, e PageSetup gerencia PaperSizeType e PageOrientationType para impressão. FreezePane e o VisibilityType de linhas/colunas mantêm planilhas grandes navegáveis.
Comentários, Hyperlinks e Nomes
Os fluxos de trabalho e a navegação de revisores são cobertos por Comment e CommentCollection, Hyperlink com HyperlinkCollection, e DefinedName com DefinedNameCollection para intervalos nomeados.
Tabelas Estruturadas e Filtros
ListObject transforma um intervalo em uma tabela estruturada com estilo TableStyleType e linhas de TotalsCalculation; AutoFilter adiciona filtragem com condições FilterColumn e FilterOperatorType.
Início Rápido
Adicione o crate ao seu Cargo.toml como uma dependência git (o crate ainda não foi publicado no crates.io):
# Cargo.toml
[dependencies]
aspose-cells-foss-rust = { git = "https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Rust" }Uma sessão mínima de gerenciamento de planilha — criar, escrever, salvar, recarregar:
use aspose_cells_foss_rust::{CellValue, Workbook};
use std::error::Error;
fn main() -> Result<(), Box<dyn Error>> {
let mut workbook = Workbook::new();
{
let mut worksheets = workbook.get_worksheets_mut();
let sheet = worksheets.get(0)?;
let mut cells = sheet.get_cells_mut();
cells.get("A1")?.put_value_string("Item")?;
cells.get("B1")?.put_value_string("Quantity")?;
cells.get("A2")?.put_value_string("Apples")?;
cells.get("B2")?.put_value_i32(12)?;
}
workbook.save("inventory.xlsx")?;
let loaded = Workbook::load_xlsx("inventory.xlsx")?;
let sheet = loaded.worksheet("Sheet1")?;
let cells = sheet.get_cells();
println!("A2 = {}", cells.get("A2")?.display_string_value());
Ok(())
}
Formatos Suportados
| Formato | Extensão | Leitura | Escrita |
|---|---|---|---|
| XLSX | .xlsx | ✓ | ✓ |
O carregamento aceita bandeiras de reparo LoadOptions (try_repair_package, try_repair_xml) com LoadDiagnostics estruturado; a gravação ocorre via save, save_xlsx ou save_with_format usando o enum SaveFormat.
Código Aberto e Licenciamento
Aspose.Cells FOSS para Rust está licenciado sob MIT. O código-fonte está em GitHub; uso comercial, modificação e redistribuição são permitidos.
Introdução
- Introdução
- Guia do Desenvolvedor
- Trabalhando com Gerenciamento de Planilhas
- Artigos da Base de Conhecimento
- API Reference
- Página do Produto