Introdução

Aspose.Cells FOSS for Java fornece um conjunto abrangente de recursos de planilha para aplicações Java 17. Lançada sob a licença MIT e distribuída como um artefato Maven padrão, a biblioteca cobre tudo, desde a criação básica de pastas de trabalho, passando por valores de célula tipados, formatação avançada, validação de dados e AutoFilter — tudo sem dependência do Microsoft Office.

Esta postagem percorre as principais áreas de recursos com exemplos de código focados extraídos de
a superfície de API verificada. Todos os nomes de classes e métodos mostrados abaixo existem na biblioteca
e estão disponíveis na versão 1.0.0.


Recursos Principais

Gerenciamento de Pastas de Trabalho e Planilhas

A classe Workbook implementa AutoCloseable para que se integre perfeitamente ao
padrão Java try-with-resources. Você pode criar uma pasta de trabalho em branco, carregar um
arquivo .xlsx existente, renomear planilhas, adicionar ou remover folhas, definir a folha ativa e
controlar a visibilidade das abas.

import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    sheet.setName("Q1 Report");
    workbook.getWorksheets().addSheet("Summary");
    workbook.save("report.xlsx");
}

Valores de Células Tipados e Fórmulas

A classe Cell aceita valores tipados via putValue() para String, int, double, boolean e LocalDateTime. O método getType() retorna um valor enum CellValueTypeSTRING, NUMBER, BOOLEAN, DATE_TIME ou FORMULA — facilitando a ramificação com base no tipo de valor sem analisar strings. As strings de fórmula são armazenadas com setFormula() e serão recalculadas pelo Excel ao abrir.

import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.CellValueType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    Cell a1 = sheet.getCells().get("A1");
    a1.putValue("Revenue");
    Cell b1 = sheet.getCells().get("B1");
    b1.putValue(42500.00);
    Cell c1 = sheet.getCells().get("C1");
    c1.setFormula("=B1*1.2");
    // Check type
    assert b1.getType() == CellValueType.NUMBER;
    assert c1.getType() == CellValueType.FORMULA;
    workbook.save("values.xlsx");
}

Formatação de Células e Estilos

Formatação é aplicada através do objeto Style recuperado de cell.getStyle() e escrito de volta com cell.setStyle().
O sub‑objeto Font expõe setBold() e setColor().
HorizontalAlignment controla o alinhamento de texto — LEFT, CENTER ou RIGHT.
Formatos numéricos personalizados usam strings de formato do Excel via style.setCustom().
A altura da linha e a largura da coluna são ajustadas através de getRows().get(n).setHeight() e getColumns().get(n).setWidth().

import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    Cell cell = sheet.getCells().get("B1");
    cell.putValue(9999.50);
    Style style = cell.getStyle();
    style.getFont().setBold(true);
    style.setCustom("#,##0.00");
    cell.setStyle(style);
    sheet.getCells().getRows().get(0).setHeight(24.0);
    sheet.getCells().getColumns().get(1).setWidth(16.0);
    workbook.save("styled.xlsx");
}

Validação de Dados

Regras de validação de dados são adicionadas através de sheet.getValidations().add(). Cada Validation objeto recebe um ValidationType (por exemplo, WHOLE_NUMBER, DECIMAL, LIST) e um OperatorType (por exemplo, BETWEEN, GREATER_THAN). Os limites de fórmula são armazenados como strings via setFormula1() e setFormula2().

import com.aspose.cells_foss.CellArea;
import com.aspose.cells_foss.OperatorType;
import com.aspose.cells_foss.Validation;
import com.aspose.cells_foss.ValidationType;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    int vi = sheet.getValidations().add(new CellArea(1, 0, 10, 0));
    Validation validation = sheet.getValidations().get(vi);
    validation.setType(ValidationType.WHOLE_NUMBER);
    validation.setOperator(OperatorType.BETWEEN);
    validation.setFormula1("1");
    validation.setFormula2("100");
    workbook.save("validated.xlsx");
}

AutoFilter

AutoFilters permitem que os usuários finais filtrem dados no Excel de forma interativa sem nenhuma configuração adicional.
Chame ws.getAutoFilter().setRange() com um intervalo em notação A1 para
habilitar a linha de cabeçalho do filtro. Colunas de filtro adicionais e critérios personalizados podem ser
definidos através de FilterColumn e AutoFilterCustomFilter.

import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

try (Workbook workbook = new Workbook()) {
    Worksheet sheet = workbook.getWorksheets().get(0);
    sheet.getCells().get("A1").putValue("Product");
    sheet.getCells().get("B1").putValue("Qty");
    sheet.getAutoFilter().setRange("A1:B1");
    workbook.save("filtered.xlsx");
}

Configuração de Página e Proteção da Planilha

A classe PageSetup controla o tamanho do papel, a orientação da página e as configurações de ajuste à página para saída pronta para impressão. A proteção da planilha é aplicada através de protect() com um WorksheetProtectionModel, permitindo que células específicas permaneçam editáveis enquanto o restante é bloqueado. Os hiperlinks são gerenciados através de HyperlinkCollection.


Início Rápido

Adicione a dependência ao seu pom.xml:

<dependency>
  <groupId>com.aspose</groupId>
  <artifactId>cells-foss</artifactId>
  <version>1.0.0</version>
</dependency>

Crie uma pasta de trabalho com todos os recursos principais em menos de 20 linhas:

import com.aspose.cells_foss.Cell;
import com.aspose.cells_foss.Style;
import com.aspose.cells_foss.Workbook;
import com.aspose.cells_foss.Worksheet;

public class QuickStart {
    public static void main(String[] args) {
        try (Workbook workbook = new Workbook()) {
            Worksheet sheet = workbook.getWorksheets().get(0);
            sheet.setName("Sales");
            sheet.getCells().get("A1").putValue("Revenue");
            Cell b1 = sheet.getCells().get("B1");
            b1.putValue(42500.00);
            Style style = b1.getStyle();
            style.getFont().setBold(true);
            style.setCustom("#,##0.00");
            b1.setStyle(style);
            sheet.getAutoFilter().setRange("A1:B1");
            workbook.save("sales.xlsx");
        }
    }
}

Formatos suportados

FormatoExtensãoLerGravar
Excel Open XML.xlsx

Salvar está atualmente limitado a .xlsx. A biblioteca armazena e faz round‑trip de fórmulas, mas não funciona como um motor completo de cálculo de planilhas.


Código Aberto e Licenciamento

Aspose.Cells FOSS for Java é lançado sob a licença MIT. Você é livre para usar, modificar e distribuí‑lo em projetos pessoais, de código aberto e comerciais sem restrição. O código‑fonte está disponível em github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Java.


Introdução