Leere Zeilen und Spalten ausblenden

VBA und Makros
Codeschnipsel
Arbeitsblatt
Zeilen und Spalten
Leer
Ausblenden
Excel

Ausgangslage - Was tut dieser Code-Schnipsel?

Die folgenden Beispiel-Makros prüfen das aktuelle Arbeitsblatt Zeilen- und Spaltenweise. Leere Spalten und/oder Zeilen werden dabei ausgeblendet.

Ergebnisse statt Aufwand & Arbeit?
Wir liefern Ergebnisse - Schicken Sie uns kurz Ihre Datei und Ihre Wünsche; wir integrieren den notwendigen Code professionell, beheben ggf. vorhandene Fehler, machen optional ein Code-Review, liefern bei Bedarf Performance-Optimierungen & setzen gewünschte Erweiterungen effizient für Sie um (und das zum Festpreis nach kurzer Sichtung).
Express-Service beauftragen

Der Quelltext

Option Explicit
' Original-Quelltext unter: https://www.online-vba.de/leere-zeilen-und-spalten-ausblenden
' Express-Hilfe für VBA unter https://www.online-vba.de/vba-expresshilfe
' Es gelten die Nutzungsbedingungen von Online-VBA.de

Public Sub OVBAde_LeereSpaltenUndZeilenAusblenden()
    Call OVBAde_LeereSpaltenAusblenden
    Call OVBAde_LeereZeilenAusblenden
End Sub

Public Sub OVBAde_LeereSpaltenAusblenden()
  Dim s As Long
  Dim sMAX As Long
  Dim z As Long
  Dim zMAX As Long
  Dim bAusblenden As Boolean
    
    sMAX = ActiveSheet.UsedRange.Columns.Count + ActiveSheet.UsedRange.Column - 1
    zMAX = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1
    
    Application.ScreenUpdating = False
    
    'Schleife über alle Spalten
    For s = 1 To sMAX
        
        'Pro Spalte prüfen wir alle Zellenwerte, ob irgendwo etwas eingetragen ist.
        'Ist etwas eingetragen wird die Zeile nicht ausgeblendet.
        bAusblenden = True
        
        For z = 1 To zMAX
            If Trim(CStr(ActiveSheet.Cells(z, s).Text)) <> "" Then
                bAusblenden = False
                Exit For
            End If
        Next z
        
        If bAusblenden = True Then
            ActiveSheet.Columns(s).EntireColumn.Hidden = True
        End If
        
    Next s
    
    Application.ScreenUpdating = True
End Sub

Public Sub OVBAde_LeereZeilenAusblenden()
  Dim s As Long
  Dim sMAX As Long
  Dim z As Long
  Dim zMAX As Long
  Dim bAusblenden As Boolean
    
    sMAX = ActiveSheet.UsedRange.Columns.Count + ActiveSheet.UsedRange.Column - 1
    zMAX = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1
    
    Application.ScreenUpdating = False
    
    'Schleife über alle Zeilen
    For z = 1 To zMAX
        
        'Pro Zeile prüfen wir alle Zellenwerte, ob irgendwo etwas eingetragen ist.
        'Ist etwas eingetragen wird die Zeile nicht ausgeblendet.
        bAusblenden = True
        
        For s = 1 To sMAX
            If Trim(CStr(ActiveSheet.Cells(z, s).Text)) <> "" Then
                bAusblenden = False
                Exit For
            End If
        Next s
        
        If bAusblenden = True Then
            ActiveSheet.Rows(z).EntireRow.Hidden = True
        End If
        
    Next z
    
    Application.ScreenUpdating = True
End Sub

Das könnte Sie auch interessieren:
Mit IT-Sicherheits-Baselines priorisieren wir Maßnahmen nach Risiko und Kosten-Nutzen – ohne Overengineering. VBA-Hilfe für Berlin mit klaren Paketen und Festpreisen.

Anmerkungen und Hinweise

Dieser Codeschnipsel wurde geschrieben von Marc Wershoven im Jahr 2017.
Die Nutzung erfolgt auf eigene Gefahr. Bitte denken Sie immer zuerst an eine ausreichende Datensicherung. Wir können keinen kostenlosen Support anbieten. Es gelten unsere Nutzungs­bedingungen.


So einfach läuft unsere VBA-Expresshilfe ab

1
Senden Sie uns Ihre Office-Datei oder Ihren VBA-Code (gerne anonymisiert) mit einer kurzen Problembeschreibung oder Ihrem Erweiterungswunsch per E-Mail.
2
Wir analysieren Ihr Anliegen schnell und schicken Ihnen umgehend (tagsüber meist innerhalb von 1-2 Stunden) ein Festpreis-Angebot.
3
Nach Ihrer Zustimmung lösen wir Ihr Problem (meist noch am gleichen Tag) oder setzen Ihre Erweiterung zuverlässig um – inklusive verständlicher Dokumentation der durchgeführten Maßnahmen.

Jetzt kontaktieren!







Mit einem * gekennzeichnete Eingabefelder sind Pflichtfelder.
Datenschutzhinweise zum Kontaktformular: Die von Ihnen im Kontaktformular bereitgestellten Daten werden ausschließlich zur Bearbeitung Ihrer Anfrage verwendet und nicht ohne Ihre Zustimmung an Dritte weitergegeben. Ihre Daten werden nur für den Zeitraum gespeichert, der zur Bearbeitung Ihrer Anfrage erforderlich ist. Weitere Hinweise zum Datenschutz finden Sie in unserer Datenschutzerklärung.
Hinweis: Für die vollständige Funktion dieser Website ist JavaScript erforderlich.
Bitte aktivieren Sie JavaScript in Ihrem Browser, um alle Inhalte und interaktiven Funktionen nutzen zu können.