Excluir linhas e colunas em branco no Excel usando Java

Podemos remover facilmente linhas e colunas em branco de planilhas do Excel programaticamente. Neste artigo, aprenderemos como excluir linhas e colunas em branco no Excel usando Java.

Os seguintes tópicos serão abordados neste artigo:

API Java para excluir linhas e colunas em branco no Excel

Para remover linhas e colunas em branco de arquivos XLSX, usaremos a API Aspose.Cells for Java. Faça o download 8 do JAR da API ou apenas adicione a seguinte configuração pom.xml em um aplicativo Java baseado em 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.11</version>
</dependency>

Excluir linhas em branco no Excel usando Java

Podemos excluir linhas em branco de planilhas do Excel programaticamente seguindo as etapas abaixo:

  • Primeiramente, carregue um arquivo Excel usando a classe Workbook.
  • Em seguida, chame o método Workbook.getWorksheets() e obtenha planilhas no objeto WorksheetCollection.
  • Em seguida, acesse a planilha que possui as linhas em branco por seu índice (base zero) ou por nome.
  • Depois disso, chame o método Cells.deleteBlankRows() para excluir as linhas em branco da planilha acessada.
  • Finalmente, chame o método save() com o caminho do arquivo de saída para salvar o arquivo de saída.

O código de exemplo a seguir mostra como remover linhas em branco do Excel usando Java.

// Carregue um arquivo excel existente.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenha a coleção de planilhas na planilha.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenha a primeira planilha de WorksheetCollection por índice.
Worksheet sheet = sheets.get(0);
// Ou pelo nome.
// Planilha folha = folhas.get("Planilha1");

// Exclua as linhas em branco da planilha.
sheet.getCells().deleteBlankRows();

// Salve o arquivo excel atualizado.
workbook.save("C:\\Files\\Cells\\output.xlsx");
Excluir linhas em branco no Excel usando Java.

Excluir linhas em branco no Excel usando Java.

Da mesma forma, podemos excluir linhas em branco de todas as planilhas em um documento do Excel. Vamos simplesmente iterar sobre WorksheetCollection e chamar o método deleteBlankRows() em cada planilha, conforme mostrado no exemplo de código a seguir:

// Abra um arquivo excel existente.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obter coleção de planilhas
WorksheetCollection worksheets = workbook.getWorksheets();

// Iterar sobre as planilhas.
for (int i=0; i<worksheets.getCount(); i++)
{
    // Acesse planilhas uma a uma
    Worksheet sheet = worksheets.get(i);
  
    // Exclua as linhas em branco da planilha.
    sheet.getCells().deleteBlankRows();
}

// Salve o arquivo excel atualizado.
workbook.save("C:\\Files\\Cells\\output.xlsx");

Excluir colunas em branco no Excel usando Java

Podemos excluir colunas em branco de planilhas do Excel programaticamente seguindo as etapas abaixo:

  • Primeiramente, carregue um arquivo Excel usando a classe Workbook.
  • Em seguida, chame o método Workbook.getWorksheets() e obtenha planilhas no objeto WorksheetCollection.
  • Em seguida, acesse a planilha que possui as colunas em branco pelo índice (base zero) ou pelo nome.
  • Depois disso, chame o método Cells.deleteBlankColumns() para excluir as colunas em branco da planilha acessada.
  • Finalmente, chame o método save() com o caminho do arquivo de saída para salvar o arquivo de saída.

O código de exemplo a seguir mostra como remover colunas em branco do Excel usando Java.

// Abra um arquivo excel existente.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenha a coleção de planilhas na planilha.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenha a primeira planilha de WorksheetCollection por índice.
Worksheet sheet = sheets.get(2);

// Exclua as colunas em branco.
sheet.getCells().deleteBlankColumns(options);

// Salve o arquivo excel atualizado.
workbook.save("C:\\Files\\Cells\\output_DeleteBlankColumns.xlsx");	
Excluir colunas em branco no Excel usando Java.

Excluir colunas em branco no Excel usando Java.

Atualizar referências automaticamente ao excluir linhas e colunas em branco

A exclusão de linhas ou colunas em branco pode quebrar referências em fórmulas, gráficos e tabelas. Por exemplo, a célula A1 em Sheet2 tem uma fórmula =Sheet1!C7 que se refere à célula C7 da primeira planilha conforme mostrado na figura a seguir.

Uma célula A1 em Sheet2 está se referindo a um valor da célula C7 em Sheet1.

Uma célula A1 em Sheet2 está se referindo a um valor da célula C7 em Sheet1.

Se removermos as linhas em branco em Sheet1, o valor de C7 (650000) será movido para a célula C6. Mas a fórmula (=Planilha1!C7) não será atualizada e a célula A1 mostrará o valor de C7 que será 550000 neste caso. Podemos evitar esse problema definindo DeleteOptions.setUpdateReference como true. Isso garantirá que as referências sejam atualizadas ao excluir linhas em branco.

Podemos atualizar referências automaticamente ao excluir linhas em branco de planilhas do Excel programaticamente seguindo as etapas abaixo:

  • Primeiramente, carregue um arquivo Excel usando a classe Workbook.
  • Em seguida, chame o método Workbook.getWorksheets() e obtenha planilhas no objeto WorksheetCollection.
  • Em seguida, acesse a planilha pelo índice (base zero) ou pelo nome que possui as linhas em branco.
  • Em seguida, crie uma instância da classe DeleteOptions
  • Em seguida, chame setUpdateReferences() para true. Ele atualizará as referências em outras planilhas enquanto exclui as linhas em branco.
  • Depois disso, chame o método Cells.deleteBlankRows() com o objeto DeleteOptions como argumento para excluir as linhas em branco da planilha acessada.
  • Finalmente, chame o método save() com o caminho do arquivo de saída para salvar o arquivo de saída.

O código de exemplo a seguir mostra como atualizar referências ao excluir as linhas em branco no Excel.

// Abra um arquivo excel existente.
Workbook workbook = new Workbook("C:\\Files\\Cells\\sample_rows_cols.xlsx");

// Obtenha a coleção de planilhas na planilha.
WorksheetCollection sheets = workbook.getWorksheets();

// Obtenha a primeira planilha de WorksheetCollection por índice.
Worksheet sheet = sheets.get(0);

// Esta opção garantirá as referências (em fórmulas, gráficos)
// são atualizados ao excluir linhas em branco.
DeleteOptions options = new DeleteOptions();
options.setUpdateReference(true);

// Exclua as linhas em branco da planilha.
sheet.getCells().deleteBlankRows(options);

// Salve o arquivo excel atualizado.
workbook.save("C:\\Files\\Cells\\output_UpdateReferencesAutomatically.xlsx");

Da mesma forma, podemos atualizar as referências ao excluir as colunas em branco no Excel. No entanto, só precisamos chamar o método deleteBlankColumns() com DeleteOptions como argumento.

Obtenha uma licença gratuita

Experimente a API sem limitações de avaliação solicitando uma licença temporária gratuita.

Conclusão

Neste artigo, aprendemos como excluir linhas e colunas no Excel usando Java. Também vimos como atualizar referências ao excluir linhas e colunas programaticamente. Além disso, você pode aprender mais sobre Aspose.Cells for Java API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.

Veja também