Excel 2010 Makro um leere Zeilen auszublenden

Hallo Forumsgemeinde,

ich kämpfe im Moment mit einem Problem. Innerhalb einer Exceldatei möchte ich alle leeren Zeilen via Makro ausblenden. Das funktioniert bei meinem Eingabeblatt auch ohne Probleme, mit folgendem Code:

Sub Makro8()

’ Makro8 Makro

On Error Resume Next
Dim i As Integer
Sheets(„Eingabe“).Activate
ActiveSheet.Unprotect = „Passwort“
Application.ScreenUpdating = False
Range(„a4:h339“).Select
For i = Selection.Cells(Selection.Cells.Count).Row _
To Selection.Cells(1).Row Step -1
If Cells(i, „A“).Value = 0 Or IsEmpty(Cells(i, „A“).Value) Then Rows(i).EntireRow.Hidden = True
Next i
Application.ScreenUpdating = True
End Sub

Sub ZeilenEinblenden()
On Error Resume Next
Application.ScreenUpdating = False
Sheets(„Eingabe“).Activate
ActiveSheet.Unprotect „Passwort“
Rows(„4:339“).EntireRow.Hidden = False
Application.ScreenUpdating = True
End Sub

Möchte nun aber dies auch auf den Verknüpften Tabellen separat anwenden können. Da funktioniert dies leider nicht. Ich vermute, dass bei der Verknüpfung ein Wert übergeben wird, den ich aber nicht sehe bzw. erkenne (Verknüpfung in Tabelle 1 Spalte A lautet wie folgt:
„=WENN(Eingabe!$E5=„Mannheim“;Eingabe!$A5;“ ")

Meine Abfrage soll auf Spalte A vorgenommen werden. Wenn diese leer ist (dann ist auch der restliche Teil dieser Spalte nicht gefüllt) dann soll die Spalte ausgeblendet werden.

Hat jemand mein Problem verstanden und weiß hierzu eventuell die Lösung.

Vielen Dank und einen Guten Start ins Neue Jahr.

Hallo Martin,

möchte ich alle leeren Zeilen via Makro ausblenden.
Das funktioniert bei meinem Eingabeblatt auch ohne Probleme,
mit folgendem Code:

probiere mal meinen nachfolgenden Codeansatz.

Ich
vermute, dass bei der Verknüpfung ein Wert übergeben wird, den
ich aber nicht sehe bzw. erkenne (Verknüpfung in Tabelle 1
Spalte A lautet wie folgt:
„=WENN(Eingabe!$E5=„Mannheim“;Eingabe!$A5;“ ")

Heißt das Blatt Tabelle 1 oder Tabelle1 ?
Spalte A ist die ganze A-Spalte, in welcher Zelle steht denn die
Formel?

Meine Abfrage soll auf Spalte A vorgenommen werden. Wenn diese
leer ist (dann ist auch der restliche Teil dieser Spalte nicht
gefüllt) dann soll die Spalte ausgeblendet werden.

Da ist mir zuoft das Wort „Spalte“ drin, verstehe das nicht genug.
" " in einer Zelle dann ist die Zelle nicht leer.
Ich schreibe ungerne Leerzeichen in eine Zelle weil man die
optisch nicht von leeren Zellen unterscheiden kann.

Gruß
Reinhard

Option Explicit

Sub ZeilenAUS()
On Error Resume Next
Application.ScreenUpdating = False
With Worksheets("Eingabe")
 Call ZeilenEIN
 .Unprotect password:="Passwort"
 .Range("A4:A339").SpecialCells(xlCellTypeBlanks).Rows.EntireRow.Hidden = True
 .Protect password:="Passwort"
End With
Application.ScreenUpdating = True
End Sub

Sub ZeilenEIN()
Application.ScreenUpdating = False
With Worksheets("Eingabe")
 .Unprotect password:="Passwort"
 .Rows("4:339").EntireRow.Hidden = False
 .Protect password:="Passwort"
End With
Application.ScreenUpdating = True
End Sub

Hallo Reinhard,
vielen Dank für Deine Mühe, nur leider hat es mir nicht weitergeholfen.
Gruß
Martin

vielen Dank für Deine Mühe, nur leider hat es mir nicht
weitergeholfen.

Hallo Martin,

und nun?

Ich sah Unstimmigkeiten bzw. auch noch anderes in deinen
Codes und habe versucht die zu korrigieren.
Dazu hast du keine Nachfragen? Kein Interesse mir dazu Feedback
zu geben?

Unstimmigkeit ist iws. vieles.
Du hast Codes die versuchen den Blattschutz aufzuheben aber sie setzen ihn nicht neu. Natürlich kann man das so machen im Rahmen
eines Gesamtplans der Aufrufe der einzelnen Makros.

Ohne Kenntnis dessen sehe ich da einen Verstoß gegen das ungeschriebene Gesetz mit einem Makro quasi ein Blatt betreten,
da die notwendigen Arbeiten durchzuführen aber ansonsten das Blatt
wieder so zu verlassen wie es vorher war, z.B. mit Blattschutz.

Weiterhin habe ich dir hoffentlich verständlich rübergebracht
daß ich exakt genug aus deinem Text herauslesen konnte was du da
wie in anderen Blättern meinst/willst/möchtest.
Auch da kein Feedback :frowning:

FAQ:2606 dort im obersten Hochladlink könntest du eine Beispielmappe
hochladen, vllt. hilft die mir/uns/dir weiter.

Gruß
REinhard