In dit artikel leg ik uit hoe je lege rijen en kolommen in een Excel-bestand kunt verwijderen met behulp van C#. Ik zal ook uitleggen hoe u referenties automatisch kunt bijwerken (gebruikt in formules, grafieken en tabellen) terwijl u lege rijen en kolommen verwijdert.

  • [Wis lege rijen in Excel met C#][1]
  • [Referenties automatisch bijwerken tijdens het verwijderen van lege rijen][2]
  • [Wis lege kolommen in Excel met C#][3]

C# API om lege rijen en kolommen te verwijderen

[Aspose.Cells for .NET][4] is een bekende spreadsheetmanipulatie-API waarmee u Excel-bestanden kunt maken en verwerken vanuit uw .NET-applicaties. Met de API kun je in een paar regels code lege rijen en kolommen in de Excel-bestanden verwijderen. U kunt de binaire bestanden van de API [downloaden][5] of deze laten installeren met behulp van [NuGet][6].

PM> Install-Package Aspose.Cells

Verwijder lege rijen in Excel met C#

Hieronder volgen de stappen om alle lege rijen in Excel te verwijderen met C#.

  • Open een Excel-bestand met het object [Werkmap][7].
  • Toegang tot het werkblad met de lege rijen. Het werkblad is toegankelijk via index (op nul gebaseerd) of op naam.
  • Roep de methode [Cells.DeleteBlankRows()][8] aan om alle lege rijen te verwijderen die geen gegevens bevatten. De volgende voorbeeldcode laat zien hoe u lege rijen in Excel kunt verwijderen met behulp van C#.
    Verwijder lege rijen

    Fig 1: Lege rijen verwijderen

Houd er rekening mee dat de methode [Cells.DeleteBlankRows][8] de lege rijen verwijdert, zelfs als er enige vorm van opmaak op is toegepast. Het verwijdert ook de opgemaakte lege rijen onder uw gegevens.

Verwijder opgemaakte lege rijen

Fig 2: Opgemaakte lege rijen verwijderen

Als u lege rijen uit alle werkbladen in een Excel-document wilt verwijderen, herhaalt u gewoon [WorksheetCollection][11] en roept u de methode [DeleteBlankRows][8] aan op elk werkblad, zoals weergegeven in de volgende code:

Werk referenties automatisch bij tijdens het verwijderen van lege rijen

Als u lege rijen verwijdert, kunnen verwijzingen in formules, grafieken en tabellen worden verbroken. De cel B2 in het tweede werkblad heeft bijvoorbeeld de formule =Blad1!C3 die verwijst naar cel C3 in het eerste werkblad, zoals weergegeven in de volgende afbeelding.

Een cel in Blad2 verwijst naar een waarde in Blad1.

Fig 3: Een cel in Blad2 verwijst naar een waarde in Blad1.

Als we lege rijen in Blad1 verwijderen, wordt de waarde lima@gmail.com verplaatst naar cel C1. Maar de formule (=Blad1!C3) wordt niet bijgewerkt en cel B2 bevat een ongeldige waarde, zoals hieronder weergegeven.

Na het verwijderen van lege rijen is de formule in cel B2 niet bijgewerkt.

Fig 4: na het verwijderen van lege rijen is de formule in cel B2 niet bijgewerkt.

We kunnen dit probleem voorkomen door de eigenschap [DeleteOptions.UpdateReference][14] te gebruiken en deze in te stellen op true. Het zorgt ervoor dat de referenties worden bijgewerkt terwijl lege rijen worden verwijderd. De volgende voorbeeldcode laat zien hoe u de eigenschap DeleteOptions.UpdateReference gebruikt. Zoals te zien is in de volgende afbeelding, is de formule bijgewerkt en bevat cel B2 een geldige waarde.

De formule is bijgewerkt en de cel bevat een geldige waarde.

Fig 5: Formule is bijgewerkt en de cel bevat een geldige waarde.

Verwijder lege kolommen in Excel met C#

De stappen voor het verwijderen van lege kolommen zijn hetzelfde als voor het verwijderen van lege rijen. We gebruiken de methode [Cells.DeleteBlankColumns][16] om alle lege kolommen te verwijderen die geen gegevens bevatten. De volgende voorbeeldcode laat zien hoe u lege rijen en kolommen verwijdert in C#.

Verwijder lege rijen en kolommen

Fig 6: Verwijder lege rijen en kolommen

Conclusie

In dit artikel hebt u geleerd hoe u lege rijen en kolommen in een Excel-bestand kunt verwijderen met behulp van C#. Bovendien heb je geleerd hoe je referenties (gebruikt in formules, grafieken en tabellen) automatisch kunt bijwerken terwijl je lege rijen en kolommen verwijdert. Raadpleeg de [documentatie][18] van Aspose.Cells voor .NET voor meer informatie. Als je vragen hebt, stel ze dan gerust op ons [Ondersteuningsforum][19]. We zullen ze binnen een paar uur beantwoorden.

Zie ook