ich möchte in mehreren Tabellen, die sich in mehreren Arbeitsblättern befinden automatisch leere Zeilen aus- und einblenden (mit VBA).
hätte jemand vllt eine Idee, wie der Code hierfür geschrieben werden soll?!
Danke!
Gruß, Mo
Sub Makro2()
Dim WsTabelle As Worksheet
For Each WsTabelle In Worksheets
WsTabelle.Cells.EntireRow.Hidden = False
Next WsTabelle
End Sub
Sub LeerWeg()
Application.ScreenUpdating = False
Dim z As Long
Dim lRow As Long
Dim WsTabelle As Worksheet
For Each WsTabelle In Worksheets
lRow = WsTabelle.UsedRange.Rows.Count
For z = 1 To lRow
If WsTabelle.Cells(z, 1).Value = "" Then WsTabelle.Cells(z, 1).EntireRow.Hidden _
= Not WsTabelle.Cells(z, 1).EntireRow.Hidden
Next z
Next WsTabelle
Application.ScreenUpdating = True
End Sub
du wirst aber feststellen, dass es mehr macht als du möchtest - viel mehr. Außerdem ist es sacklangsam.
Sub Makro2()
On Error GoTo hell
Dim ws As Worksheet
Application.ScreenUpdating = False
For Each ws In Worksheets
ws.Columns("J:J").SpecialCells(xlCellTypeFormulas, 16).EntireRow.Hidden = Not ws.Columns("J: _
J").SpecialCells(xlCellTypeFormulas, 16).EntireRow.Hidden
Next ws
hell:
If Err.Number = 1004 Then Resume Next 'keine Zellen gefunden
Application.ScreenUpdating = True
End Sub
LG,