As tabelas dinâmicas em planilhas do Excel são usadas para resumir os dados de forma interativa. Suponha que você tenha os dados de várias faturas em uma planilha. Nesse caso, você pode usar uma tabela dinâmica para totalizar as faturas agrupadas por clientes ou produtos. Neste artigo, você aprenderá a lidar com tabelas dinâmicas no Excel programaticamente. Particularmente, você saberá como criar uma tabela dinâmica no Excel usando Java. Além disso, também geraremos gráficos com base na tabela dinâmica.
- API Java para trabalhar com tabelas dinâmicas do Excel
- Criar uma tabela dinâmica no Excel
- Gerar gráfico usando uma tabela dinâmica
- Obtenha uma licença de API gratuita
API Java para criar tabela dinâmica no Excel
Para criar a tabela dinâmica do Excel, usaremos Aspose.Cells for Java. É uma API poderosa que permite gerar, modificar e converter arquivos Excel de dentro de seus aplicativos Java. Você pode baixar a API ou instalá-la usando as seguintes configurações do Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.4</version>
</dependency>
Criar uma tabela dinâmica no Excel usando Java
A seguir estão as etapas para criar uma tabela dinâmica no Excel usando Java.
- Crie um novo arquivo Excel ou carregue um existente usando a classe Workbook.
- Preencha a planilha com dados (opcional).
- Obtenha a coleção de tabelas dinâmicas em um objeto PivotTableCollection usando o método Worksheet.getPivotTables().
- Adicione uma nova tabela dinâmica usando o método PivotTableCollection.add(string, string, string) e obtenha sua referência em um objeto PivotTable.
- Defina opções como total geral, formatação, etc.
- Adicione campos à área usando o método PivotTable.addFieldToArea(int, int).
- Salve a pasta de trabalho usando o método Workbook.save(string).
O exemplo de código a seguir mostra como adicionar uma tabela dinâmica no Excel.
// Instanciar um objeto Workbook
Workbook workbook = new Workbook("worksheet.xlsx");
// Acesse a planilha
Worksheet sheet2 = workbook.getWorksheets().get(1);
// Obter a coleção de tabelas dinâmicas na planilha
PivotTableCollection pivotTables = sheet2.getPivotTables();
// Adicionar uma tabela dinâmica à planilha
int index = pivotTables.add("=Data!A1:F30", "B3", "PivotTable1");
// Acesse a instância da tabela dinâmica recém-adicionada
PivotTable pivotTable = pivotTables.get(index);
// Mostrar os totais gerais
pivotTable.setRowGrand(true);
pivotTable.setColumnGrand(true);
// Definir o relatório de tabela dinâmica é formatado automaticamente
pivotTable.setAutoFormat(true);
// Defina o tipo de formatação automática de tabela dinâmica.
pivotTable.setAutoFormatType(PivotTableAutoFormatType.REPORT_6);
// Arraste o primeiro campo para a área da linha.
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);
// Arraste o terceiro campo para a área da linha.
pivotTable.addFieldToArea(PivotFieldType.ROW, 2);
// Arraste o segundo campo para a área da linha.
pivotTable.addFieldToArea(PivotFieldType.ROW, 1);
// Arraste o quarto campo para a área da coluna.
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 3);
// Arraste o quinto campo para a área de dados.
pivotTable.addFieldToArea(PivotFieldType.DATA, 5);
// Defina o formato de número do primeiro campo de dados
pivotTable.getDataFields().get(0).setNumber(7);
// Salve o arquivo Excel
workbook.save("pivotTable.xls");
Dados do Excel
Tabela Dinâmica
Gerar um gráfico usando tabelas dinâmicas do Excel em Java
A seguir estão as etapas para gerar um gráfico usando tabelas dinâmicas do Excel em Java.
- Crie um novo arquivo Excel ou carregue um existente usando a classe Workbook.
- Preencha a planilha (opcional).
- Adicione uma nova planilha do tipo gráfico usando Workbook.getWorksheets().add(SheetType.CHART) e obtenha sua referência em um objeto Worksheet.
- Adicione um novo gráfico usando o método Worksheet.getCharts().add() e obtenha sua referência em um objeto Chart.
- Defina a tabela dinâmica como a fonte de dados do gráfico usando o método Chart.setPivotSource(string).
- Salve a pasta de trabalho usando o método Workbook.save(string).
O exemplo de código a seguir mostra como gerar um gráfico usando uma tabela dinâmica do Excel.
// Instanciar um objeto Workbook
Workbook workbook = new Workbook("pivotTable.xls");
// Adicionar uma nova planilha
int sheetIndex = workbook.getWorksheets().add(SheetType.CHART);
Worksheet sheet3 = workbook.getWorksheets().get(sheetIndex);
// Nomeie a folha
sheet3.setName("PivotChart");
// Adicionar um gráfico de colunas
int chartIndex = sheet3.getCharts().add(ChartType.COLUMN, 0, 5, 28, 16);
Chart chart = sheet3.getCharts().get(chartIndex);
// Definir a fonte de dados do gráfico dinâmico
chart.setPivotSource("PivotTable!PivotTable1");
chart.setHidePivotFieldButtons(false);
// Salve o arquivo Excel
workbook.save("pivotChart_test.xls");
Obtenha uma licença de API gratuita
Você pode obter uma licença temporária gratuita para usar a API sem limitações de avaliação.
Conclusão
Neste artigo, você aprendeu como criar uma tabela dinâmica no Excel usando Java. Além disso, você viu como gerar gráficos usando as tabelas dinâmicas no Excel. Você pode explorar mais sobre a API Java Excel usando documentação. Caso você tenha alguma dúvida, sinta-se à vontade para nos informar através do nosso fórum.