criar arquivos do Excel no Android

Neste artigo, você aprenderá como implementar recursos de automação do Excel em seus aplicativos Android. Depois de ler este artigo, você poderá criar um arquivo Excel XLSX ou XLS do zero em seu aplicativo Android programaticamente. Além disso, este artigo abordará como atualizar um arquivo Excel existente, gerar gráficos, aplicar fórmulas e adicionar tabelas dinâmicas em planilhas do Excel.

API Android para criar arquivo Excel - Download grátis

Aspose.Cells para Android via Java é uma poderosa API de manipulação de planilhas que permite criar ou modificar arquivos do Excel sem o MS Office. A API suporta a adição de tabelas, gráficos, fórmulas e outras operações de manipulação de planilhas de forma programática. Você pode baixar a API ou instalá-la usando as seguintes configurações em build.gradle.

maven {
    url "https://repository.aspose.com/repo/" }
compile (
        group: 'com.aspose',
        name: 'aspose-cells',
        version: '21.3',
        classifier: 'android.via.java')

Criar Excel XLSX ou XLS no Android

Cada pasta de trabalho do Excel é composta por uma ou mais planilhas que contêm ainda as linhas e colunas para manter os dados na forma de células. A seguir estão as etapas para criar um arquivo XLSX do Excel a partir do zero.

  • Crie uma instância da classe Workbook.
  • Acesse a planilha desejada usando o método Workbook.getWorksheets.get().
  • Coloque o valor na célula desejada na planilha usando o identificador da célula, como A1, B3, etc.
  • Salve a pasta de trabalho como um arquivo do Excel usando o método Workbook.save().

O exemplo de código a seguir mostra como criar um arquivo Excel XLSX no Android.

// Criar uma nova pasta de trabalho
Workbook workbook = new Workbook();

// Adicionar valor na célula
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World!");

// Salvar como arquivo Excel XLSX
workbook.save("Excel.xlsx"); 
criar Excel XLSX XLS no Android

Editar um arquivo XLSX do Excel no Android

Vamos agora dar uma olhada em como modificar ou inserir dados em um arquivo MS Excel existente. Para isso, basta carregar o arquivo, acessar a planilha desejada e salvar o arquivo atualizado. A seguir estão as etapas para modificar um arquivo Excel existente.

  • Abra o arquivo do Excel usando a classe Workbook.
  • Acesse as planilhas e células usando as classes Worksheet e Cell respectivamente.
  • Salve a pasta de trabalho atualizada como um arquivo .xlsx do Excel.

O exemplo de código a seguir mostra como editar um arquivo MS Excel existente no Android.

// Criar uma nova pasta de trabalho
Workbook workbook = new Workbook("workbook.xls"); 

// Obter a referência da célula "A1" das células de uma planilha
Cell cell = workbook.getWorksheets().get(0).getCells().get("A1");

// Defina o "Olá Mundo!" valor na célula "A1"
cell.setValue("updated cell value.");

// Escreva o arquivo Excel
workbook.save("Excel.xls", FileFormatType.EXCEL_97_TO_2003);

Criar gráficos ou gráficos no Excel no Android

Gráficos em planilhas são usados para representar visualmente os dados armazenados nas planilhas. Eles facilitam a análise de uma grande quantidade de dados com bastante facilidade. Aspose.Cells para Android via Java fornece uma grande variedade de gráficos que você pode criar dentro dos arquivos do Excel programaticamente. A seguir estão as etapas para criar um gráfico em um arquivo Excel XLSX.

  • Crie um novo arquivo Excel ou carregue um existente usando a classe Workbook.
  • Adicione dados à planilha (opcional).
  • Obtenha a coleção de gráficos da planilha usando o método Worksheet.getCharts().
  • Adicione um novo gráfico usando o método Worksheet.getCharts().add().
  • Obtenha o gráfico recém-criado da coleção.
  • Especifique o intervalo das células para definir NSeries para o gráfico.
  • Salve a pasta de trabalho como um arquivo .xlsx do Excel.

O exemplo de código a seguir mostra como criar um gráfico no Excel XLSX no Android.

// Criar uma nova pasta de trabalho
Workbook workbook = new Workbook("workbook.xlsx"); 

// Obtendo a referência da primeira planilha
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet sheet = worksheets.get(0);

// Adicionando algum valor de amostra às células
Cells cells = sheet.getCells();
Cell cell = cells.get("A1");
cell.setValue(50);
cell = cells.get("A2");
cell.setValue(100);
cell = cells.get("A3");
cell.setValue(150);
cell = cells.get("B1");
cell.setValue(4);
cell = cells.get("B2");
cell.setValue(20);
cell = cells.get("B3");
cell.setValue(50);

// obter gráficos na planilha
ChartCollection charts = sheet.getCharts();

// Adicionando um gráfico à planilha
int chartIndex = charts.add(ChartType.PYRAMID, 5, 0, 15, 5);
Chart chart = charts.get(chartIndex);

// Adicionando NSeries (fonte de dados do gráfico) ao gráfico variando de "A1"
// célula para "B3"
SeriesCollection serieses = chart.getNSeries();
serieses.add("A1:B3", true);

// Escreva o arquivo Excel 
workbook.save("Excel_with_Chart.xlsx");
criar gráfico no excel android

Criar uma tabela dinâmica no Excel XLSX no Android

As tabelas dinâmicas nas planilhas do Excel têm várias finalidades, como adicionar filtros aos dados, computar totais, resumir dados, etc. As tabelas dinâmicas podem ser criadas usando o intervalo das células na planilha. A seguir estão as etapas para criar uma tabela dinâmica em uma planilha do Excel.

  • Crie uma nova Pasta de trabalho ou carregue um arquivo existente.
  • Insira os dados na planilha (opcional).
  • Acesse a coleção de tabelas dinâmicas usando o método Worksheet.getPivotTables().
  • Adicione uma nova tabela dinâmica na planilha usando o método Worksheet.getPivotTables().add().
  • Forneça dados para a tabela dinâmica.
  • Salve a pasta de trabalho.

O exemplo de código a seguir mostra como criar uma tabela dinâmica no Excel.

// Criar uma nova pasta de trabalho
Workbook workbook = new Workbook("workbook.xlsx"); 

// Pegue a primeira planilha.
Worksheet sheet = workbook.getWorksheets().get(0);

// Obtendo a coleção de células da planilha
Cells cells = sheet.getCells();

// Configurando o valor para as células
Cell cell = cells.get("A1");
cell.setValue("Sport");
cell = cells.get("B1");
cell.setValue("Quarter");
cell = cells.get("C1");
cell.setValue("Sales");

cell = cells.get("A2");
cell.setValue("Golf");
cell = cells.get("A3");
cell.setValue("Golf");
cell = cells.get("A4");
cell.setValue("Tennis");
cell = cells.get("A5");
cell.setValue("Tennis");
cell = cells.get("A6");
cell.setValue("Tennis");
cell = cells.get("A7");
cell.setValue("Tennis");
cell = cells.get("A8");
cell.setValue("Golf");

cell = cells.get("B2");
cell.setValue("Qtr3");
cell = cells.get("B3");
cell.setValue("Qtr4");
cell = cells.get("B4");
cell.setValue("Qtr3");
cell = cells.get("B5");
cell.setValue("Qtr4");
cell = cells.get("B6");
cell.setValue("Qtr3");
cell = cells.get("B7");
cell.setValue("Qtr4");
cell = cells.get("B8");
cell.setValue("Qtr3");

cell = cells.get("C2");
cell.setValue(1500);
cell = cells.get("C3");
cell.setValue(2000);
cell = cells.get("C4");
cell.setValue(600);
cell = cells.get("C5");
cell.setValue(1500);
cell = cells.get("C6");
cell.setValue(4070);
cell = cells.get("C7");
cell.setValue(5000);
cell = cells.get("C8");
cell.setValue(6430);


PivotTableCollection pivotTables = sheet.getPivotTables();

// Adicionando uma tabela dinâmica à planilha
int index = pivotTables.add("=A1:C8", "E3", "PivotTable2");

// Acessando a instância da tabela dinâmica recém-adicionada
PivotTable pivotTable = pivotTables.get(index);

// Não mostrando totais gerais para linhas.
pivotTable.setRowGrand(false);

// Arrastando o primeiro campo para a área da linha.
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// Arrastando o segundo campo para a área da coluna.
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1);

// Arrastando o terceiro campo para a área de dados.
pivotTable.addFieldToArea(PivotFieldType.DATA, 2);

// Escreva o arquivo Excel 
workbook.save("Excel_with_Chart.xlsx");
criar tabela dinâmica no excel

Adicionar fórmulas para células no arquivo do Excel

Aspose.Cells para Android via Java também permite trabalhar com fórmulas nas planilhas do Excel. Você pode aplicar as funções internas e complementares às células.

Aplicar funções internas no Excel

Para usar as funções internas, você pode simplesmente acessar a célula desejada na planilha e adicionar a fórmula usando o método Cell.setFormula(String). O exemplo de código a seguir mostra como definir uma fórmula interna.

// Criar uma nova pasta de trabalho
Workbook workbook = new Workbook();

// Adicionar valor na célula
workbook.getWorksheets().get(0).getCells().get(0).setFormula("=H7*(1+IF(P7 =$L$3,$M$3, (IF(P7=$L$4,$M$4,0))))");

// Salvar como arquivo Excel XLSX
workbook.save("Excel.xlsx"); 

Adicionar funções suplementares no Excel

Pode haver um caso em que você precise usar uma função definida pelo usuário. Para isso, você terá que registrar a função add-in usando um arquivo .xlam (suplemento habilitado para macro do Excel) e depois usá-lo para as células desejadas. Para registrar as funções do suplemento, o Aspose.Cells para Android via Java fornece os métodos registerAddInFunction(int, String) e registerAddInFunction(String, String, boolean). O exemplo de código a seguir mostra como registrar e usar uma função de suplemento.

// criar uma nova pasta de trabalho
Workbook workbook = new Workbook();

// Registre o suplemento habilitado para macro junto com o nome da função
int id = workbook.getWorksheets().registerAddInFunction("TESTUDF.xlam", "TEST_UDF", false);

// Registre mais funções no arquivo (se houver)
workbook.getWorksheets().registerAddInFunction(id, "TEST_UDF1"); //in this way you can add more functions that are in the same file

// Acesse a primeira planilha
Worksheet worksheet = workbook.getWorksheets().get(0);

// Acesse a primeira célula
Cell cell = worksheet.getCells().get("A1");

// Definir o nome da fórmula presente no suplemento
cell.setFormula("=TEST_UDF()"); 

// Salvar como arquivo Excel XLSX
workbook.save("Excel.xlsx"); 

Conclusão

Neste artigo, você viu como criar arquivos do MS Excel do zero no Android sem o MS Office. Você também aprendeu como atualizar pastas de trabalho, criar gráficos, adicionar tabelas e aplicar fórmulas a valores de células em planilhas do MS Excel. Você pode saber mais sobre a API do Android Excel usando documentação. Caso você tenha alguma dúvida, sinta-se à vontade para nos informar através do nosso fórum.

Veja também